)]}'
{
  "log": [
    {
      "commit": "77a48ae01bbc5b05ca009cf09e2fcb53e4c8ff23",
      "tree": "780c7d6bdee784c2f8248979de348491cfb63b34",
      "parents": [
        "659562aaf133c41b8d90ec9216c07646f0f14362"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Sep 15 12:34:04 2015 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Sep 15 12:34:04 2015 +0000"
      },
      "message": "Revert \"Revert \"ART: Register allocation and runtime support for try/catch\"\"\n\nThe original CL triggered b/24084144 which has been fixed\nby Ib72e12a018437c404e82f7ad414554c66a4c6f8c.\n\nThis reverts commit 659562aaf133c41b8d90ec9216c07646f0f14362.\n\nChange-Id: Id8980436172457d0fcb276349c4405f7c4110a55\n"
    },
    {
      "commit": "659562aaf133c41b8d90ec9216c07646f0f14362",
      "tree": "be1beae390262bf2f5a17bfa44de93081a849d07",
      "parents": [
        "b022fa1300e6d78639b3b910af0cf85c43df44bb"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Sep 14 21:26:33 2015 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Sep 14 21:26:33 2015 +0000"
      },
      "message": "Revert \"ART: Register allocation and runtime support for try/catch\"\n\nBreaks libcore test org.apache.harmony.security.tests.java.security.KeyStorePrivateKeyEntryTest#testGetCertificateChain. Need to investigate.\n\nThis reverts commit b022fa1300e6d78639b3b910af0cf85c43df44bb.\n\nChange-Id: Ib24d3a80064d963d273e557a93469c95f37b1f6f\n"
    },
    {
      "commit": "b022fa1300e6d78639b3b910af0cf85c43df44bb",
      "tree": "780c7d6bdee784c2f8248979de348491cfb63b34",
      "parents": [
        "e481c006e8b055a31d9c7cff27f4145e57e3c113"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Aug 20 17:47:48 2015 +0100"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Sep 14 20:42:58 2015 +0100"
      },
      "message": "ART: Register allocation and runtime support for try/catch\n\nThis patch completes a series of CLs that add support for try/catch\nin the Optimizing compiler. With it, Optimizing can compile all\nmethods containing try/catch, provided they don\u0027t contain catch loops.\nFuture work will focus on improving performance of the generated code.\n\nSsaLivenessAnalysis was updated to propagate liveness information of\ninstructions live at catch blocks, and to keep location information on\ninstructions which may be caught by catch phis.\n\nRegisterAllocator was extended to spill values used after catch, and\nto allocate spill slots for catch phis. Catch phis generated for the\nsame vreg share a spill slot as the raw value must be the same.\n\nLocation builders and slow paths were updated to reflect the fact that\nthrowing an exception may not lead to escaping the method.\n\nInstruction code generators are forbidden from using of implicit null\nchecks in try blocks as live registers need to be saved before handing\nover to the runtime.\n\nCodeGenerator emits a stack map for each catch block, storing locations\nof catch phis. CodeInfo and StackMapStream recognize this new type of\nstack map and store them separate from other stack maps to avoid dex_pc\nconflicts.\n\nAfter having found the target catch block to deliver an exception to,\nQuickExceptionHandler looks up the dex register maps at the throwing\ninstruction and the catch block and copies the values over to their\nrespective locations.\n\nThe runtime-support approach was selected because it allows for the\nbest performance in the normal control-flow path, since no propagation\nof catch phi values is necessary until the exception is thrown. In\naddition, it also greatly simplifies the register allocation phase.\n\nConstantHoisting was removed from LICMTest because it instantiated\n(now abstract) HConstant and was bogus anyway (constants are always in\nthe entry block).\n\nChange-Id: Ie31038ad8e3ee0c13a5bbbbaf5f0b3e532310e4e\n"
    },
    {
      "commit": "e481c006e8b055a31d9c7cff27f4145e57e3c113",
      "tree": "be1beae390262bf2f5a17bfa44de93081a849d07",
      "parents": [
        "5da1ea29be0d5f4e8fc03c3c509f0474b53affd2",
        "0600cdc1d283190f86a3b84b7f5374c1af62112b"
      ],
      "author": {
        "name": "Pirama Arumuga Nainar",
        "email": "pirama@google.com",
        "time": "Mon Sep 14 18:04:34 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Sep 14 18:04:34 2015 +0000"
      },
      "message": "Merge \"Remove unnecessary std::move from test_dex_file_builder\""
    },
    {
      "commit": "0600cdc1d283190f86a3b84b7f5374c1af62112b",
      "tree": "2e09fc067eac743318901d4ffd14a7d54ad5e7d0",
      "parents": [
        "8f5d2d84efb90e7220dd42c7aa104dbc19c52f4e"
      ],
      "author": {
        "name": "Pirama Arumuga Nainar",
        "email": "pirama@google.com",
        "time": "Mon Sep 14 11:00:16 2015 -0700"
      },
      "committer": {
        "name": "Pirama Arumuga Nainar",
        "email": "pirama@google.com",
        "time": "Mon Sep 14 11:00:16 2015 -0700"
      },
      "message": "Remove unnecessary std::move from test_dex_file_builder\n\nThis stops Clang from warning about -Wpessimizing-move.\n\nChange-Id: Id40acf1c398c615faf6486ef700df6975a5f013f\n"
    },
    {
      "commit": "5da1ea29be0d5f4e8fc03c3c509f0474b53affd2",
      "tree": "f5b2962ce7d2024adabf8e974f117ff22da8a72c",
      "parents": [
        "329d1b5a5afd1f1520c3fd2e723f1245d953074d",
        "70c08d3c913ce2150cd620ea87b919f8eb5bd953"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Mon Sep 14 17:36:34 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Sep 14 17:36:34 2015 +0000"
      },
      "message": "Merge \"Fix the DequeuePendingReference crash.\""
    },
    {
      "commit": "70c08d3c913ce2150cd620ea87b919f8eb5bd953",
      "tree": "7390f7bc8cfbf3ada1f387e470e51c4ff7531145",
      "parents": [
        "2d06e08d25bbf8eff1de945736a60810009e59ad"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Thu Sep 10 16:01:30 2015 -0700"
      },
      "committer": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Mon Sep 14 10:15:08 2015 -0700"
      },
      "message": "Fix the DequeuePendingReference crash.\n\nIn DequeuePendingReference, acknowledge a black/white Reference object\nin the queue if its referent was marked right after it\u0027s enqueued.\n\nBug: 12687968\nBug: 23896462\nChange-Id: I33c802e04e1688a54a70ad3935628e3853c46e44\n"
    },
    {
      "commit": "329d1b5a5afd1f1520c3fd2e723f1245d953074d",
      "tree": "2f6c04f3931fe0815664ead321c3f520ed6e516e",
      "parents": [
        "6dc8bc81a3611c44b082f7d7e4bdc73f7c7ebe01",
        "4a37953377092ade93c15c72ad49cde4adaabd94"
      ],
      "author": {
        "name": "Pirama Arumuga Nainar",
        "email": "pirama@google.com",
        "time": "Mon Sep 14 16:50:58 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Sep 14 16:50:58 2015 +0000"
      },
      "message": "Merge \"Revert \"Re-enable Clang\u0027s -Wpessimizing-move\"\""
    },
    {
      "commit": "4a37953377092ade93c15c72ad49cde4adaabd94",
      "tree": "056a8ae56040f2d88e08d35bde7faf6fbc032a82",
      "parents": [
        "8f5d2d84efb90e7220dd42c7aa104dbc19c52f4e"
      ],
      "author": {
        "name": "Pirama Arumuga Nainar",
        "email": "pirama@google.com",
        "time": "Mon Sep 14 16:50:30 2015 +0000"
      },
      "committer": {
        "name": "Pirama Arumuga Nainar",
        "email": "pirama@google.com",
        "time": "Mon Sep 14 16:50:30 2015 +0000"
      },
      "message": "Revert \"Re-enable Clang\u0027s -Wpessimizing-move\"\n\nThis reverts commit 8f5d2d84efb90e7220dd42c7aa104dbc19c52f4e.\n\nChange-Id: I24fa681c0639bc4bf7af1b821f620780cd7a474d\n"
    },
    {
      "commit": "6dc8bc81a3611c44b082f7d7e4bdc73f7c7ebe01",
      "tree": "904ed9844f1ba702d19d848cf987bd0be6e79580",
      "parents": [
        "6fdc805d6a798c5c31294592efbe7c74c6a64b33",
        "8f5d2d84efb90e7220dd42c7aa104dbc19c52f4e"
      ],
      "author": {
        "name": "Pirama Arumuga Nainar",
        "email": "pirama@google.com",
        "time": "Mon Sep 14 16:21:09 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Sep 14 16:21:09 2015 +0000"
      },
      "message": "Merge \"Re-enable Clang\u0027s -Wpessimizing-move\""
    },
    {
      "commit": "6fdc805d6a798c5c31294592efbe7c74c6a64b33",
      "tree": "2f6c04f3931fe0815664ead321c3f520ed6e516e",
      "parents": [
        "9af47e27674e70e7f82315d39de5bc659c4e1b83",
        "f794ad748b8cf772f4a8084c0ab3f61e7f3bd225"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Sep 14 13:47:18 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Sep 14 13:47:18 2015 +0000"
      },
      "message": "Merge \"Be very patient with the emulator.\""
    },
    {
      "commit": "9af47e27674e70e7f82315d39de5bc659c4e1b83",
      "tree": "e1cf3d95c94721cf9e411e544f37105b684d7666",
      "parents": [
        "35717f8cfb6c1de5c89b2f9b990a050b2cbab66f",
        "6058455d486219994921b63a2d774dc9908415a2"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Sep 14 11:43:25 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Sep 14 11:43:25 2015 +0000"
      },
      "message": "Merge \"Optimizing: Tag basic block allocations with their source.\""
    },
    {
      "commit": "35717f8cfb6c1de5c89b2f9b990a050b2cbab66f",
      "tree": "468d9275ebb774de9c373aea6387e5c55c4336e6",
      "parents": [
        "b6f7dd330f115fc977d1d5a10122c41c9dd7c210",
        "637ee0b9c10ab7732a7ee7b8335f3fff4ac1549c"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Sep 14 10:42:01 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Sep 14 10:42:01 2015 +0000"
      },
      "message": "Merge \"ART: Add some utilities for working with containers.\""
    },
    {
      "commit": "8f5d2d84efb90e7220dd42c7aa104dbc19c52f4e",
      "tree": "c508f6317e6f92151ef4f9836dd45f0b1c22b27c",
      "parents": [
        "b6f7dd330f115fc977d1d5a10122c41c9dd7c210"
      ],
      "author": {
        "name": "Pirama Arumuga Nainar",
        "email": "pirama@google.com",
        "time": "Sat Sep 12 22:35:30 2015 -0700"
      },
      "committer": {
        "name": "Pirama Arumuga Nainar",
        "email": "pirama@google.com",
        "time": "Sat Sep 12 22:35:30 2015 -0700"
      },
      "message": "Re-enable Clang\u0027s -Wpessimizing-move\n\nThe warning on variant_map.h is fixed by\nhttps://android-review.googlesource.com/#/c/170745/.\n\nChange-Id: I802dd26538637ff276b7c24c1f5bca280b0bc428\n"
    },
    {
      "commit": "b6f7dd330f115fc977d1d5a10122c41c9dd7c210",
      "tree": "056a8ae56040f2d88e08d35bde7faf6fbc032a82",
      "parents": [
        "b09f33381174843214de40533366e162a0c6d768",
        "68cad90bf51337af0a6b3c0522a218ea5e3ecf43"
      ],
      "author": {
        "name": "Pirama Arumuga Nainar",
        "email": "pirama@google.com",
        "time": "Sun Sep 13 02:31:32 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sun Sep 13 02:31:32 2015 +0000"
      },
      "message": "Merge \"Remove unnecessary std::move from variant_map.h\""
    },
    {
      "commit": "68cad90bf51337af0a6b3c0522a218ea5e3ecf43",
      "tree": "056a8ae56040f2d88e08d35bde7faf6fbc032a82",
      "parents": [
        "b09f33381174843214de40533366e162a0c6d768"
      ],
      "author": {
        "name": "Pirama Arumuga Nainar",
        "email": "pirama@google.com",
        "time": "Sat Sep 12 16:04:42 2015 -0700"
      },
      "committer": {
        "name": "Pirama Arumuga Nainar",
        "email": "pirama@google.com",
        "time": "Sat Sep 12 16:06:02 2015 -0700"
      },
      "message": "Remove unnecessary std::move from variant_map.h\n\nThis triggers Clang\u0027s pessimizing-move warning.\n\nChange-Id: Icb33643f28d1d159a87a17235c4d210209199dac\n"
    },
    {
      "commit": "b09f33381174843214de40533366e162a0c6d768",
      "tree": "101070244af5d5f8df815211bf02423f8b8ee7d1",
      "parents": [
        "40285414080b17c1be2c9292e8c0f4c4da8e6d05",
        "4f55e22630d99ca0edd9e951e5ee96b57bb9b980"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 11 21:20:54 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 11 21:20:54 2015 +0000"
      },
      "message": "Merge \"Add and use ScopedSuspendAll\""
    },
    {
      "commit": "40285414080b17c1be2c9292e8c0f4c4da8e6d05",
      "tree": "35b839677ab0f561c53fabea8845cf373e13735d",
      "parents": [
        "2d06e08d25bbf8eff1de945736a60810009e59ad",
        "4b1e0f417572eab92f1b8e2f921d2aba8a9fbd8c"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 11 20:43:10 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 11 20:43:10 2015 +0000"
      },
      "message": "Merge \"Add benchmark for ScopedPrimitiveArray\""
    },
    {
      "commit": "4f55e22630d99ca0edd9e951e5ee96b57bb9b980",
      "tree": "84b7d55a6a7c31c09ed2865cc1bc2f4393476533",
      "parents": [
        "2d06e08d25bbf8eff1de945736a60810009e59ad"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 04 13:26:21 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 11 13:14:20 2015 -0700"
      },
      "message": "Add and use ScopedSuspendAll\n\nUsage replaces most SuspendAll and ResumeAll calls.\n\nChange-Id: I355683a5365876242cea85a656dcb58455f7a294\n"
    },
    {
      "commit": "4b1e0f417572eab92f1b8e2f921d2aba8a9fbd8c",
      "tree": "28484fc12197cacd8735b602dec37b29cd8061da",
      "parents": [
        "48269a62abcc2e9e82c9443027f871eede2f3505"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 04 16:38:55 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 11 12:56:47 2015 -0700"
      },
      "message": "Add benchmark for ScopedPrimitiveArray\n\nTODO: Make this into a caliper benchmark.\n\nBug: 19664826\nChange-Id: If1484a68cc62603f1d216b1662ca55cceac1d619\n"
    },
    {
      "commit": "2d06e08d25bbf8eff1de945736a60810009e59ad",
      "tree": "27c10f4fc30a85947ac0e3189b115035107a7ff0",
      "parents": [
        "e2cb7f297dfeb1a6e19c3b8d45b742427054fa56",
        "501fd635a557645ab05f893c56e1f358e21bab82"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Sep 11 17:50:01 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 11 17:50:01 2015 +0000"
      },
      "message": "Merge \"ART: Fix Quick-style LR vs PC core spill mask bug\""
    },
    {
      "commit": "e2cb7f297dfeb1a6e19c3b8d45b742427054fa56",
      "tree": "b5501cd32e859351b5f058da56e62accb03a3821",
      "parents": [
        "15982a940dd0032e225f8d2829609d7a35a3d842",
        "520633bebd2bf4d70884d30f179dbde9f275aac6"
      ],
      "author": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Fri Sep 11 15:40:48 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 11 15:40:48 2015 +0000"
      },
      "message": "Merge \"Support deoptimization on exception\""
    },
    {
      "commit": "15982a940dd0032e225f8d2829609d7a35a3d842",
      "tree": "9dc4a502a23da308055949300b79da5ca630fadb",
      "parents": [
        "619552b8007c157ca494f1b6355c0a388456b5b1",
        "5550ca8bcc742b109d77e62f3a0877c667d894d3"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Sep 11 14:13:08 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 11 14:13:08 2015 +0000"
      },
      "message": "Merge \"Record profiling information before Jitting.\""
    },
    {
      "commit": "5550ca8bcc742b109d77e62f3a0877c667d894d3",
      "tree": "522c873c59b56fff0244e754dd869f18ccf485f4",
      "parents": [
        "dbd357086fdb7fce619d745fda4efd52377becdd"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Aug 21 18:38:30 2015 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Sep 11 15:08:37 2015 +0100"
      },
      "message": "Record profiling information before Jitting.\n\n- Add a new instrumentation kind to record dynamic invokes.\n- Use the JNI entry point field to store the profiling data.\n- Record seen receivers for every dynamic invoke.\n\nChange-Id: I2c1738ab2a72052d45964d055dc16b44b906e54c\n"
    },
    {
      "commit": "619552b8007c157ca494f1b6355c0a388456b5b1",
      "tree": "42d2917b3b3e81bfd14120d0209e99e9f3b420ff",
      "parents": [
        "1d76bfe710629a4f18bb79a9188f6eb4d9b2e4f4",
        "9ee23f4273efed8d6378f6ad8e63c65e30a17139"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Sep 11 13:20:10 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 11 13:20:10 2015 +0000"
      },
      "message": "Merge \"ARM/ARM64: Intrinsics - numberOfTrailingZeros, rotateLeft, rotateRight\""
    },
    {
      "commit": "f794ad748b8cf772f4a8084c0ab3f61e7f3bd225",
      "tree": "2ef4894ac13434b38656c1aefe8531cd7dc7281a",
      "parents": [
        "1d76bfe710629a4f18bb79a9188f6eb4d9b2e4f4"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Sep 11 12:08:49 2015 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Sep 11 12:08:49 2015 +0100"
      },
      "message": "Be very patient with the emulator.\n\nChange-Id: I9f1f3a5d825fea85115b3331da317eefd3dbe17b\n"
    },
    {
      "commit": "9ee23f4273efed8d6378f6ad8e63c65e30a17139",
      "tree": "3b1bfb8a6260a57ccb2f025fcdc457464714701e",
      "parents": [
        "62ba40149be3d1c65e4db1f455822a585149d32f"
      ],
      "author": {
        "name": "Scott Wakeling",
        "email": "scott.wakeling@linaro.org",
        "time": "Thu Jul 23 10:44:35 2015 +0100"
      },
      "committer": {
        "name": "Scott Wakeling",
        "email": "scott.wakeling@linaro.org",
        "time": "Fri Sep 11 09:51:58 2015 +0100"
      },
      "message": "ARM/ARM64: Intrinsics - numberOfTrailingZeros, rotateLeft, rotateRight\n\nChange-Id: I2a07c279756ee804fb7c129416bdc4a3962e93ed\n"
    },
    {
      "commit": "1d76bfe710629a4f18bb79a9188f6eb4d9b2e4f4",
      "tree": "a0c0e31c19177d462fb3e3f46c4e93b948e9b340",
      "parents": [
        "92eaada6274d2da18f65069861013a4047a593e9",
        "1a9735701d0826adbc9d68cd3762b78f96499cfb"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Sep 11 03:10:58 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 11 03:10:58 2015 +0000"
      },
      "message": "Merge \"ART: Narrow parameter types.\""
    },
    {
      "commit": "1a9735701d0826adbc9d68cd3762b78f96499cfb",
      "tree": "a0c0e31c19177d462fb3e3f46c4e93b948e9b340",
      "parents": [
        "92eaada6274d2da18f65069861013a4047a593e9"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Sep 10 20:09:11 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Sep 10 20:09:11 2015 -0700"
      },
      "message": "ART: Narrow parameter types.\n\nFollow-up to e6215c0ec4b1bb71b722fdbf7e62eaf3be8a91d5. Those should\nhave been uint16_t.\n\nChange-Id: I2cc13701eb937dad488bcf405a9a7b26eabb656e\n"
    },
    {
      "commit": "92eaada6274d2da18f65069861013a4047a593e9",
      "tree": "c30c6da2ad45fbf4c7334ce1a0b22113ddcad23a",
      "parents": [
        "2a455e162cbba5dad610b02155957aa7759c9a34",
        "e6215c0ec4b1bb71b722fdbf7e62eaf3be8a91d5"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Sep 11 01:35:46 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 11 01:35:46 2015 +0000"
      },
      "message": "Merge \"ART: Move access flags checking to dex file verifier\""
    },
    {
      "commit": "e6215c0ec4b1bb71b722fdbf7e62eaf3be8a91d5",
      "tree": "c30c6da2ad45fbf4c7334ce1a0b22113ddcad23a",
      "parents": [
        "2a455e162cbba5dad610b02155957aa7759c9a34"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Aug 31 18:54:38 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Sep 10 17:58:18 2015 -0700"
      },
      "message": "ART: Move access flags checking to dex file verifier\n\nActually implement all the access flags checking in the dex file\nverifier. Add tests.\n\nChange-Id: I8b797357831b588589d56d6e2e22f7b410f33008\n"
    },
    {
      "commit": "501fd635a557645ab05f893c56e1f358e21bab82",
      "tree": "828ad27a68033d78fb858dcf031c36a627659165",
      "parents": [
        "010c7fd437932e0132fc4b44de6274480573ff30"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Sep 10 16:11:06 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Sep 10 17:01:22 2015 -0700"
      },
      "message": "ART: Fix Quick-style LR vs PC core spill mask bug\n\nIt\u0027s always been a bug that Quick marked PC as spilled instead of\nLR. The root cause was a mutation of the spill mask at frame exit,\nwhen LR is being restored into PC to return. A local should have\nbeen used to keep the actual spill mask safe and sound.\n\nThis has only worked because nobody ever uses LR, even after long\njumps for exception dispatch. However, single-frame deoptimization\nneeds this to work, and I\u0027d rather fix this than being forced to\nhave machine-specific fixups.\n\nAlso fix in optimizing, and bump the oat version.\n\nChange-Id: Ib032a533408bf464097fc96dcbfc5b6a68bf59a1\n"
    },
    {
      "commit": "2a455e162cbba5dad610b02155957aa7759c9a34",
      "tree": "6f7db60f47cef063bd8cd81c19e6fb391c68c5e4",
      "parents": [
        "010c7fd437932e0132fc4b44de6274480573ff30",
        "dcf0d4baacf04be16d76f6ac2c15fa3e9c95be21"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Thu Sep 10 23:32:47 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Sep 10 23:32:47 2015 +0000"
      },
      "message": "Merge \"Increase the run-test timeout for the read barrier config.\""
    },
    {
      "commit": "dcf0d4baacf04be16d76f6ac2c15fa3e9c95be21",
      "tree": "f3c9ce3003fd52b90f25a4d891b52c4b45f002b4",
      "parents": [
        "dbd357086fdb7fce619d745fda4efd52377becdd"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Wed Sep 09 18:59:42 2015 -0700"
      },
      "committer": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Thu Sep 10 10:50:01 2015 -0700"
      },
      "message": "Increase the run-test timeout for the read barrier config.\n\nThreadStress sometimes times out without hanging.\n\nBug: 23485091\nChange-Id: Id6833c7887ece74aebafc6e1d5a8c772d7e0ae62\n"
    },
    {
      "commit": "010c7fd437932e0132fc4b44de6274480573ff30",
      "tree": "36fed0c2bac11700a1d1a6ef83c5843b916379fb",
      "parents": [
        "0e21e01e2283eed58332ce1ac317037c399718a3",
        "d14c59564870c910bdc823081f0ed1101f599231"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu Sep 10 17:33:44 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Sep 10 17:33:44 2015 +0000"
      },
      "message": "Merge \"Induction variable range analysis.\""
    },
    {
      "commit": "d14c59564870c910bdc823081f0ed1101f599231",
      "tree": "36a831f8c786823129bebbf03a4ca48ff6ed3c23",
      "parents": [
        "e6576390f957c82c2aede438834d028066757368"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Tue Sep 08 15:25:15 2015 -0700"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu Sep 10 10:16:04 2015 -0700"
      },
      "message": "Induction variable range analysis.\n\nRationale: by computing an upper bound on the trip count of each\n           loop after induction var analysis has completed, a\n\t   simple range analysis yields lower and upper bounds on\n\t   all induced expressions in a loop; this analysis\n\t   plugs directly into BCE (follow-up CL).\n\nChange-Id: I46a3fe48721ca372547199b39a3498c47992597d\n"
    },
    {
      "commit": "520633bebd2bf4d70884d30f179dbde9f275aac6",
      "tree": "0006fb9db71545d9aaa88df3952a7488b30b2ae6",
      "parents": [
        "e0a49e3a93aa54b9e603d797d9e925a98742753a"
      ],
      "author": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Tue Sep 08 17:03:36 2015 +0200"
      },
      "committer": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Thu Sep 10 17:39:56 2015 +0200"
      },
      "message": "Support deoptimization on exception\n\nAllows to deoptimize when an exception is being thrown. We only\ndeoptimize if an executable frame (starting from the catch handler)\nneeds to be executed with the interpreter.\n\nBefore executing deoptimized frames, the exception is restored. The\ninterpreter starts by handling this exception at the point of the\nthrowing instruction.\n\nBug: 23714835\nChange-Id: I0c5f7d4b257644acf12210aae8e5b6bb0f4af1f7\n"
    },
    {
      "commit": "0e21e01e2283eed58332ce1ac317037c399718a3",
      "tree": "e1995dd45218bc93fffd29c0ce2afe273b22cef0",
      "parents": [
        "dbd357086fdb7fce619d745fda4efd52377becdd",
        "a646aaf674302c681264a7f419beae817b35cce7"
      ],
      "author": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Thu Sep 10 10:31:05 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Sep 10 10:31:05 2015 +0000"
      },
      "message": "Merge \"Add extra options to tools/run-jdwp-tests.sh\""
    },
    {
      "commit": "a646aaf674302c681264a7f419beae817b35cce7",
      "tree": "e1995dd45218bc93fffd29c0ce2afe273b22cef0",
      "parents": [
        "dbd357086fdb7fce619d745fda4efd52377becdd"
      ],
      "author": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Thu Sep 10 12:03:51 2015 +0200"
      },
      "committer": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Thu Sep 10 12:10:00 2015 +0200"
      },
      "message": "Add extra options to tools/run-jdwp-tests.sh\n\nAdds options for local debugging:\n--verbose: passes \u0027-verbose:jdwp\u0027 to the debuggee command-line to\n           enable JDWP verbose logs.\n--test \u003cname\u003e: runs a specific test instead of the whole test\n               suite.\n\nChange-Id: Ia04dd26c16c0b6733bb1c8a1b15ec585a24872c8\n"
    },
    {
      "commit": "dbd357086fdb7fce619d745fda4efd52377becdd",
      "tree": "88f407f75671c020d6093380219cff835c23c479",
      "parents": [
        "b9c79928ff774c8d385ef2db169b447833207a44",
        "e80673245c0433a71a4930e460be5dc0920885b2"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Sep 09 17:15:23 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Sep 09 17:15:23 2015 +0000"
      },
      "message": "Merge \"ART: Add missing GetInterfaceMethodIfProxy\""
    },
    {
      "commit": "e80673245c0433a71a4930e460be5dc0920885b2",
      "tree": "6c718161fd8861901a5cb67ee60e465010770863",
      "parents": [
        "e6576390f957c82c2aede438834d028066757368"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Sep 08 17:42:59 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Sep 09 10:13:56 2015 -0700"
      },
      "message": "ART: Add missing GetInterfaceMethodIfProxy\n\nAdd missing uses of GetInterfaceMethodIfProxy in reflection code.\n\nAdd a test case for a JNI call to a proxy method.\n\nBug: https://code.google.com/p/android-developer-preview/issues/detail?id\u003d2973\nBug: 23886441\nChange-Id: I5b66b64b5561fcee15d0314707d67e8abc02ce5b\n"
    },
    {
      "commit": "b9c79928ff774c8d385ef2db169b447833207a44",
      "tree": "d9e5e34f1e227fa422e89e6754a7a63e605d45af",
      "parents": [
        "402ae2dc9b94df62859bd9825e5c00f298dc71b2",
        "bfb5ba90cd6425ce49c2125a87e3b12222cc2601"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Sep 09 16:39:16 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Sep 09 16:39:16 2015 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Do a second check for testing intrinsic types.\"\"\""
    },
    {
      "commit": "402ae2dc9b94df62859bd9825e5c00f298dc71b2",
      "tree": "fb63090ac4387af93ad049105b28dbd1885fa0db",
      "parents": [
        "67c5d28da9b0c40343e8a8f68fea4dc86ff554d1",
        "3ecfd65143d95bd7c6cbe4f58c33af517d3761e0"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Sep 09 13:16:59 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Sep 09 13:16:59 2015 +0000"
      },
      "message": "Merge \"Add dex_pc to all HInstructions in builder.\""
    },
    {
      "commit": "3ecfd65143d95bd7c6cbe4f58c33af517d3761e0",
      "tree": "62b3194f0ac2814541170f970996b0a35511e78e",
      "parents": [
        "426514cada274714244290d6447d9f62dc3394bf"
      ],
      "author": {
        "name": "Yevgeny Rouban",
        "email": "yevgeny.y.rouban@intel.com",
        "time": "Mon Sep 07 17:57:00 2015 +0600"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Sep 09 14:12:13 2015 +0100"
      },
      "message": "Add dex_pc to all HInstructions in builder.\n\nOptimizing compiler generates minimum debug line info that\nis built using the dex_pc information about suspend points.\nThis is not enough for performance and debugging needs.\n\nThis patch makes all HInstructions contain\ndex_pc and all allocations in the builder define this value.\n\nChange-Id: I1d14aefe075189b7b1b41b4384c3499474c19afc\nSigned-off-by: Yevgeny Rouban \u003cyevgeny.y.rouban@intel.com\u003e\nSigned-off-by: Serdjuk, Nikolay Y \u003cnikolay.y.serdjuk@intel.com\u003e\n"
    },
    {
      "commit": "67c5d28da9b0c40343e8a8f68fea4dc86ff554d1",
      "tree": "3e661d9922c1c220e333f805cc751457090a094f",
      "parents": [
        "426514cada274714244290d6447d9f62dc3394bf",
        "0616ae081e648f4b9b64b33e2624a943c5fce977"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Sep 09 10:04:41 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Sep 09 10:04:41 2015 +0000"
      },
      "message": "Merge \"[optimizing] Add support for x86 constant area\""
    },
    {
      "commit": "bfb5ba90cd6425ce49c2125a87e3b12222cc2601",
      "tree": "6280171d451642dc70c87894d553f76c6c12db0a",
      "parents": [
        "e6576390f957c82c2aede438834d028066757368"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Sep 01 15:45:02 2015 +0000"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Sep 08 20:36:09 2015 -0700"
      },
      "message": "Revert \"Revert \"Do a second check for testing intrinsic types.\"\"\n\nThis reverts commit a14b9fef395b94fa9a32147862c198fe7c22e3d7.\n\nWhen an intrinsic with invoke-type virtual is recognized, replace\nthe instruction with a new HInvokeStaticOrDirect.\n\nMinimal update for dex-cache rework. Fix includes.\n\nChange-Id: I1c8e735a2fa7cda4419f76ca0717125ef236d332\n"
    },
    {
      "commit": "426514cada274714244290d6447d9f62dc3394bf",
      "tree": "3f4ff9ad32076624abaf50bde1769ef56ef28e4d",
      "parents": [
        "e6576390f957c82c2aede438834d028066757368",
        "acd20ca4edcae752e3e555517fa6f8378177262c"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Wed Sep 09 01:35:11 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Sep 09 01:35:11 2015 +0000"
      },
      "message": "Merge \"Allow null current thread in jni weak ref decode during shutdown.\""
    },
    {
      "commit": "acd20ca4edcae752e3e555517fa6f8378177262c",
      "tree": "3f4ff9ad32076624abaf50bde1769ef56ef28e4d",
      "parents": [
        "e6576390f957c82c2aede438834d028066757368"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Tue Sep 08 17:50:48 2015 -0700"
      },
      "committer": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Tue Sep 08 17:57:01 2015 -0700"
      },
      "message": "Allow null current thread in jni weak ref decode during shutdown.\n\nFix a crash during a runtime shutdown for the read barrier config.\n\nBug: 23897251\nBug: 12687968\nChange-Id: Iea0888cb6d052d4becddba289dc0ed121461e97d\n"
    },
    {
      "commit": "0616ae081e648f4b9b64b33e2624a943c5fce977",
      "tree": "20db99d802277cce68f88eda918ae7646383ff14",
      "parents": [
        "e6576390f957c82c2aede438834d028066757368"
      ],
      "author": {
        "name": "Mark Mendell",
        "email": "mark.p.mendell@intel.com",
        "time": "Fri Apr 17 12:49:27 2015 -0400"
      },
      "committer": {
        "name": "Mark Mendell",
        "email": "mark.p.mendell@intel.com",
        "time": "Tue Sep 08 17:01:05 2015 -0400"
      },
      "message": "[optimizing] Add support for x86 constant area\n\nUse the Quick trick of finding the address of the method by calling the\nnext instruction and popping the return address into a register.  This\ntrick is used because of the lack of PC-relative addressing in 32 bit\nmode on the X86.\n\nAdd a HX86ComputeBaseMethodAddress instruction to trigger generation\nof the method address, which is referenced by instructions needing\naccess to the constant area.\n\nAdd a HX86LoadFromConstantTable instruction that takes a\nHX86ComputeBaseMethodAddress and a HConstant that will be used to load\nthe value when needed.\n\nChange Add/Sub/Mul/Div to detect a HX86LoadFromConstantTable right hand\nside, and generate code that directly references the constant area.\nOther uses will be added later.\n\nChange the inputs to HReturn and HInvoke(s), replacing the FP constants\nwith HX86LoadFromConstantTable instead.  This allows values to be\nloaded from the constant area into the right location.\n\nPort the X86_64 assembler constant area handling to the X86.\n\nUse the new per-backend optimization framework to do this conversion.\n\nChange-Id: I6d235a72238262e4f9ec0f3c88319a187f865932\nSigned-off-by: Mark Mendell \u003cmark.p.mendell@intel.com\u003e\n"
    },
    {
      "commit": "6058455d486219994921b63a2d774dc9908415a2",
      "tree": "3d205227f3ff54cd3a50bc5c0e7cb3ad6c175b86",
      "parents": [
        "637ee0b9c10ab7732a7ee7b8335f3fff4ac1549c"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Sep 03 13:35:12 2015 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Sep 08 18:09:49 2015 +0100"
      },
      "message": "Optimizing: Tag basic block allocations with their source.\n\nReplace GrowableArray with ArenaVector in HBasicBlock and,\nto track the source of allocations, assign one new and two\nQuick\u0027s arena allocation types to these vectors. Rename\nkArenaAllocSuccessor to kArenaAllocSuccessors.\n\nBug: 23736311\nChange-Id: Ib52e51698890675bde61f007fe6039338cf1a025\n"
    },
    {
      "commit": "637ee0b9c10ab7732a7ee7b8335f3fff4ac1549c",
      "tree": "21cf63333abcc07ed1e3138ec3c9e690e0abc227",
      "parents": [
        "68ffda887e35f35e978f2f607b7a91e44a5e1969"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Sep 04 12:47:41 2015 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Sep 08 18:09:20 2015 +0100"
      },
      "message": "ART: Add some utilities for working with containers.\n\nAdd utility functions for searching, removing and replacing\nexisting values in a container, to be used with std::vector\n(including the ArenaVector alias) and other containers.\n\nAlso move UniqueCPtr\u003c\u003e and MakeUnique() to base/stl_utils.h\nand clean up related includes.\n\nChange-Id: I1e61762df91c046866591bda167d42bf8b67a692\n"
    },
    {
      "commit": "e6576390f957c82c2aede438834d028066757368",
      "tree": "5d469dae78f2e4df8fa20ce40805351d447d3e4f",
      "parents": [
        "e0a49e3a93aa54b9e603d797d9e925a98742753a",
        "471a2034171346dda4539b985b95aa6370531171"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Tue Sep 08 16:21:14 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Sep 08 16:21:14 2015 +0000"
      },
      "message": "Merge \"Simplify loop invariant operations during induction analysis.\""
    },
    {
      "commit": "e0a49e3a93aa54b9e603d797d9e925a98742753a",
      "tree": "55711f732177bd72acda44b02461215d27ca55d9",
      "parents": [
        "815d1c868ad7ccba8526ac3a457e2094b609912e",
        "449b10922daacc880374d7862dbb5977c7657f6d"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Sep 08 13:06:07 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Sep 08 13:06:07 2015 +0000"
      },
      "message": "Merge \"ART: Clean up Thumb2Assembler\u0027s AddConstant().\""
    },
    {
      "commit": "449b10922daacc880374d7862dbb5977c7657f6d",
      "tree": "55711f732177bd72acda44b02461215d27ca55d9",
      "parents": [
        "815d1c868ad7ccba8526ac3a457e2094b609912e"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Sep 08 12:16:45 2015 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Sep 08 14:00:28 2015 +0100"
      },
      "message": "ART: Clean up Thumb2Assembler\u0027s AddConstant().\n\nChange-Id: I6a4c32d1bba79879e5514059df6336dc331246c1\n"
    },
    {
      "commit": "471a2034171346dda4539b985b95aa6370531171",
      "tree": "9f04b5dd3169909953ac4e38c106287f12e0bbef",
      "parents": [
        "6b79454092582bea4a72872d04e4bc9f0a48a4b8"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Fri Sep 04 18:22:11 2015 -0700"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Mon Sep 07 10:35:55 2015 -0700"
      },
      "message": "Simplify loop invariant operations during induction analysis.\n\nRationale:\nSaves some memory for nodes that are not really required, and\nyields slightly more readable debugging strings.\n\nChange-Id: I95b64b48869699137b5d49e26eb20091e264de7a\n"
    },
    {
      "commit": "815d1c868ad7ccba8526ac3a457e2094b609912e",
      "tree": "e86b78438c563cb49be690218696b4662fd720ff",
      "parents": [
        "ce3e7aba9fcd877cfce86733c683a14df9d84fe1",
        "52641480526b53637337809be363fcfdf2fca081"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Sep 07 13:15:23 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Sep 07 13:15:23 2015 +0000"
      },
      "message": "Merge \"Remove framework start from script.\""
    },
    {
      "commit": "52641480526b53637337809be363fcfdf2fca081",
      "tree": "e86b78438c563cb49be690218696b4662fd720ff",
      "parents": [
        "ce3e7aba9fcd877cfce86733c683a14df9d84fe1"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Sep 07 13:33:36 2015 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Sep 07 13:33:36 2015 +0100"
      },
      "message": "Remove framework start from script.\n\nIt\u0027s not needed anymore, as it was a one-off instruction that\nneeded to be executed by the devices.\n\nChange-Id: I5eadb74aee7a9cc03be71b6e5f53e0cfd8d2352f\n"
    },
    {
      "commit": "ce3e7aba9fcd877cfce86733c683a14df9d84fe1",
      "tree": "241fad294fd76b123d89e55756260384a3027c78",
      "parents": [
        "62ba40149be3d1c65e4db1f455822a585149d32f",
        "5a988229c95037282186dbc688a4ca6d524f141d"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Sep 07 11:40:57 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Sep 07 11:40:57 2015 +0000"
      },
      "message": "Merge \"Don\u0027t stop framework when testing.\""
    },
    {
      "commit": "5a988229c95037282186dbc688a4ca6d524f141d",
      "tree": "241fad294fd76b123d89e55756260384a3027c78",
      "parents": [
        "62ba40149be3d1c65e4db1f455822a585149d32f"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Sep 07 12:04:35 2015 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Sep 07 12:04:35 2015 +0100"
      },
      "message": "Don\u0027t stop framework when testing.\n\nIt prevents our infra team from knowing if a device is responsive.\n\nChange-Id: Ie62df378e6fd540bcbfa2982a67b40a0dce85cb8\n"
    },
    {
      "commit": "62ba40149be3d1c65e4db1f455822a585149d32f",
      "tree": "733018ddafd05b1aee42da04064947e342bc9b70",
      "parents": [
        "6b79454092582bea4a72872d04e4bc9f0a48a4b8",
        "f80967c9796aab4a435c31ec8d152013f70cadc2"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Sat Sep 05 00:45:13 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Sep 05 00:45:13 2015 +0000"
      },
      "message": "Merge \"Fix the read barrier config build.\""
    },
    {
      "commit": "f80967c9796aab4a435c31ec8d152013f70cadc2",
      "tree": "9ffd0441d903f76787c355256c65e30e62cbdf43",
      "parents": [
        "48269a62abcc2e9e82c9443027f871eede2f3505"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Fri Sep 04 17:29:20 2015 -0700"
      },
      "committer": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Fri Sep 04 17:29:20 2015 -0700"
      },
      "message": "Fix the read barrier config build.\n\nChange-Id: I580d85609e8fa9b8c65466c6596d65bc3b155330\n"
    },
    {
      "commit": "6b79454092582bea4a72872d04e4bc9f0a48a4b8",
      "tree": "7f231ee88089dc797d1dc570efd064f517676670",
      "parents": [
        "5495a72a8718c2b3156603158a932a8c4b403de5",
        "e609b7cf9996389e6e693f149489737436172a2c"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Sat Sep 05 00:25:41 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Sep 05 00:25:41 2015 +0000"
      },
      "message": "Merge \"Further development of induction variable analysis.\""
    },
    {
      "commit": "e609b7cf9996389e6e693f149489737436172a2c",
      "tree": "14f1c83ea83d1b9133272af1dc6f3ad314f1fef3",
      "parents": [
        "fb32aca04cc1b5f5e8325d79664882f25f253881"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu Aug 27 13:46:58 2015 -0700"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Fri Sep 04 17:03:39 2015 -0700"
      },
      "message": "Further development of induction variable analysis.\n\nVarious improvements:\n(1) Introduced period sequences.\n(2) Extended all transfer functions to deal with all cases;\n    also refactored these to read more compactly.\n(3) Improved debugging output for constants for readability.\n(4) Used direct pointer in mappings for clarify.\n(5) Several induction info \"constructors\" for readability.\n(6) Various other changes suggested in earlier code reviews.\n\nChange-Id: I9d5381f1676b63d30cea6f5e304d4b7bda7acb96\n"
    },
    {
      "commit": "5495a72a8718c2b3156603158a932a8c4b403de5",
      "tree": "125bf79b304b553142641997d9f7ce76dc69ecf1",
      "parents": [
        "48269a62abcc2e9e82c9443027f871eede2f3505",
        "9b1c71ec77d92d63f1c2183b0cd3588727b2c265"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 04 23:43:18 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 04 23:43:18 2015 +0000"
      },
      "message": "Merge \"Make class loaders weak roots\""
    },
    {
      "commit": "9b1c71ec77d92d63f1c2183b0cd3588727b2c265",
      "tree": "1f8cfa8487497a24cd8fdb0269242ea9e6873544",
      "parents": [
        "5fbb15fe05fb8814907e00fdc0ca34d9b6113c9f"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Sep 02 18:51:54 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 04 15:44:45 2015 -0700"
      },
      "message": "Make class loaders weak roots\n\nMaking the class loaders weak roots in the class linker prevents them\nfrom keeping the classes as live. However we currently do mark them\nas strong roots to make sure no accidental class unloading occurs\nuntil the logic to free from linear alloc is complete.\n\nBug: 22720414\n\nChange-Id: I57466236d9ce6fd064dda9a30ce8ab68094fb8b0\n"
    },
    {
      "commit": "48269a62abcc2e9e82c9443027f871eede2f3505",
      "tree": "95c2d8d002ad18a8212f6ac2f1109f86f2b8a890",
      "parents": [
        "5fbb15fe05fb8814907e00fdc0ca34d9b6113c9f",
        "d630fd68491a0a59831d9822e9f5ecef250a7af5"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Fri Sep 04 20:17:31 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 04 20:17:31 2015 +0000"
      },
      "message": "Merge \"Increase the run test failure output diff line count.\""
    },
    {
      "commit": "d630fd68491a0a59831d9822e9f5ecef250a7af5",
      "tree": "b3c1375e3137f06a6a0cf4a7ce6ef3c62b6dded3",
      "parents": [
        "0526f5af91cc6b986e0b439577de0b93f9e5354c"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Fri Sep 04 12:52:03 2015 -0700"
      },
      "committer": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Fri Sep 04 12:52:03 2015 -0700"
      },
      "message": "Increase the run test failure output diff line count.\n\nIf there are a lot of threads and deep stacks, we may not see the\nbeginning of the crash with the failure message.\n\nBug: 23485091\nChange-Id: I854a05d9d9840f0ba10d6317396eb34e1da58c4d\n"
    },
    {
      "commit": "5fbb15fe05fb8814907e00fdc0ca34d9b6113c9f",
      "tree": "6f51eefdbd2db1952feae51f2658ecfed37f76dc",
      "parents": [
        "415634fccff984038f419c3bde131e5a2b12c41d",
        "e7049cab51769605798a380897de9f200be45cde"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 04 18:24:43 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 04 18:24:43 2015 +0000"
      },
      "message": "Merge \"Fix art_quick_alloc_object_tlab\""
    },
    {
      "commit": "e7049cab51769605798a380897de9f200be45cde",
      "tree": "218c50c2704b77ff80313e3436d605be7aa922b3",
      "parents": [
        "5bb601a8df9e4ded065fc266e0e5727debea2d8b"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 04 10:40:01 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 04 11:13:34 2015 -0700"
      },
      "message": "Fix art_quick_alloc_object_tlab\n\nWas not updated for the new dex cache arrays.\n\nChange-Id: I47b14fbaa071428abf87b18a045009a1c04d2376\n"
    },
    {
      "commit": "415634fccff984038f419c3bde131e5a2b12c41d",
      "tree": "b51a15dfe37dae82f9f60f046b5578b1dbbcbfc1",
      "parents": [
        "5bb601a8df9e4ded065fc266e0e5727debea2d8b",
        "fc1ccd740b7c8e96dfac675cfc580122cd1b40a6"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri Sep 04 18:09:56 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 04 18:09:56 2015 +0000"
      },
      "message": "Merge \"lambda: Infrastructure to support capture/liberate-variable dex opcodes\""
    },
    {
      "commit": "5bb601a8df9e4ded065fc266e0e5727debea2d8b",
      "tree": "5f6818e4bfa1b267b03e022f10feb76d97994827",
      "parents": [
        "ce8f828ad6ef44b8ef7ee24ed249abc440a5f58e",
        "c77f3ab25939727346b0b6ec2f9421e218ac836a"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 04 17:12:08 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 04 17:12:08 2015 +0000"
      },
      "message": "Merge \"Clean up formatting in class linker\""
    },
    {
      "commit": "c77f3ab25939727346b0b6ec2f9421e218ac836a",
      "tree": "5f6818e4bfa1b267b03e022f10feb76d97994827",
      "parents": [
        "ce8f828ad6ef44b8ef7ee24ed249abc440a5f58e"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Sep 03 19:41:50 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 04 09:52:49 2015 -0700"
      },
      "message": "Clean up formatting in class linker\n\nChange-Id: Ifc27dbe0b5fcabec439602e02f4128c063e1b120\n"
    },
    {
      "commit": "ce8f828ad6ef44b8ef7ee24ed249abc440a5f58e",
      "tree": "4bd72547222fe47a43aed1e6c2cc9bb53d8e803e",
      "parents": [
        "7a4ba9958b2d523fee0a11fc32c8bc259bd0e12a",
        "e87c1cd9542b5a1b55d4131a0ab6cc831f90c983"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Sep 04 16:16:50 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 04 16:16:50 2015 +0000"
      },
      "message": "Merge \"ART: Fix 466-get-live-vreg for read barrier.\""
    },
    {
      "commit": "e87c1cd9542b5a1b55d4131a0ab6cc831f90c983",
      "tree": "80d79a406a39cc1908c99614efc88042396967a2",
      "parents": [
        "957fb8930766ae422568e7b1b816159a9e9bc18c"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Sep 04 15:52:23 2015 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Sep 04 15:52:23 2015 +0100"
      },
      "message": "ART: Fix 466-get-live-vreg for read barrier.\n\nWith the read barrier, the test is actually compiled but it\nruns interpreted, so the vreg is successfully retrieved.\nFix the stack visitor to check if we have a compiled frame\nbefore checking if the method is \"Optimized\".\n\nChange-Id: I600eb7b5c0c2be1b9617e4d05401a711dac01738\n"
    },
    {
      "commit": "7a4ba9958b2d523fee0a11fc32c8bc259bd0e12a",
      "tree": "70cac41e7a9e5a8263bc92cb4c8751961d255c52",
      "parents": [
        "957fb8930766ae422568e7b1b816159a9e9bc18c",
        "305ff2d5481f7f53147d92f5e632949542803ecd"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Sep 04 13:32:47 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 04 13:32:47 2015 +0000"
      },
      "message": "Merge \"ART: Abort if malloc() fails in SwapAllocator::allocate().\""
    },
    {
      "commit": "957fb8930766ae422568e7b1b816159a9e9bc18c",
      "tree": "849a611f978656f1c85182402e1ef2c8ca50c5e6",
      "parents": [
        "68ffda887e35f35e978f2f607b7a91e44a5e1969",
        "05792b98980741111b4d0a24d68cff2a8e070a3a"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Sep 04 10:34:04 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 04 10:34:04 2015 +0000"
      },
      "message": "Merge \"ART: Move DexCache arrays to native.\""
    },
    {
      "commit": "305ff2d5481f7f53147d92f5e632949542803ecd",
      "tree": "3387af62c8c4ad867a6bc213e177b1110a0f8471",
      "parents": [
        "68ffda887e35f35e978f2f607b7a91e44a5e1969"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Sep 04 11:10:40 2015 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Sep 04 11:10:40 2015 +0100"
      },
      "message": "ART: Abort if malloc() fails in SwapAllocator::allocate().\n\nChange-Id: I084da8d376b0a86fc551b87d77ce9c74e60359bf\n"
    },
    {
      "commit": "68ffda887e35f35e978f2f607b7a91e44a5e1969",
      "tree": "7a07331657f142455732d0161518a02e48d87326",
      "parents": [
        "8c679146d7a5c0c193ffab65d786fd5d84b3f4fd",
        "de286fdcb4d203438b4b49c22c8a4a24d08ad14d"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 04 02:06:49 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 04 02:06:49 2015 +0000"
      },
      "message": "Merge \"Address some leftover comments\""
    },
    {
      "commit": "de286fdcb4d203438b4b49c22c8a4a24d08ad14d",
      "tree": "7a07331657f142455732d0161518a02e48d87326",
      "parents": [
        "8c679146d7a5c0c193ffab65d786fd5d84b3f4fd"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Sep 03 18:10:29 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Sep 03 18:23:09 2015 -0700"
      },
      "message": "Address some leftover comments\n\nChange-Id: Ia8d01c8b1c10d23efdd94aa76289a1ed3373957c\n"
    },
    {
      "commit": "8c679146d7a5c0c193ffab65d786fd5d84b3f4fd",
      "tree": "772cbbe6652b32ea2be31532156295db27579390",
      "parents": [
        "897ce64153e4758663e464fb5fb339f9a7b496c8",
        "f1d666e1b48f8070ef1177fce156c08827f08eb8"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 04 00:43:22 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 04 00:43:22 2015 +0000"
      },
      "message": "Merge \"Add ScopedThreadSuspension\""
    },
    {
      "commit": "f1d666e1b48f8070ef1177fce156c08827f08eb8",
      "tree": "772cbbe6652b32ea2be31532156295db27579390",
      "parents": [
        "897ce64153e4758663e464fb5fb339f9a7b496c8"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Sep 03 16:13:34 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Sep 03 17:33:19 2015 -0700"
      },
      "message": "Add ScopedThreadSuspension\n\nFixes the TransitionFromRunnableToSuspended and\nTransitionFromSuspendedToRunnable pattern that was prone to errors.\n\nChange-Id: Ie6ae9c0357c83b4fc4899d05dfa0975553170267\n"
    },
    {
      "commit": "fc1ccd740b7c8e96dfac675cfc580122cd1b40a6",
      "tree": "95eb97f3cfebe13fa4c5928089ff9b7ee50c4793",
      "parents": [
        "ea33c3041e8db74d79a188703c9ec9c3879f9c1b"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu Jul 30 15:11:09 2015 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu Sep 03 17:28:37 2015 -0700"
      },
      "message": "lambda: Infrastructure to support capture/liberate-variable dex opcodes\n\n* ArtLambdaMethod - wrap an ArtMethod with extra runtime lambda info\n* Closure - data representation for a runtime lambda closure (read-only)\n* ClosureBuilder - writer for creating a Closure at runtime\n* ShortyFieldType - char/enum wrapper for shorty_field_type in dex\n\nTests:\n* Closure, ClosureBuilder, ShortyFieldType have full unit test coverage.\n* ArtLambdaMethod does not, but it is tested indirectly and is otherwise\n  trivial getters.\n\nFuture CLs will include interpreter integration with minimal changes to\nthis Closure infrastructure.\n\nChange-Id: I38a7aea8df1da7b154fd6623258c6c228c8e51df\n"
    },
    {
      "commit": "897ce64153e4758663e464fb5fb339f9a7b496c8",
      "tree": "5685e4df884ac806e2b5cdfeabed4420015548c4",
      "parents": [
        "0526f5af91cc6b986e0b439577de0b93f9e5354c",
        "736b560f2d2c89b63dc895888c671b5519afa4c8"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Sep 03 22:11:02 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Sep 03 22:11:02 2015 +0000"
      },
      "message": "Merge \"Reduce how often we call FindDexCache\""
    },
    {
      "commit": "736b560f2d2c89b63dc895888c671b5519afa4c8",
      "tree": "d5aee7ac36f458a5f6e6d75fceb19f8963a71db5",
      "parents": [
        "fe3879e6011f629d0dd6b04fab00b9496bd4ea08"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Sep 02 14:54:11 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Sep 03 13:27:19 2015 -0700"
      },
      "message": "Reduce how often we call FindDexCache\n\nBefore host boot.oat -j4 optimizing compile:\nreal  1m17.792s\nuser  3m26.140s\nsys 0m8.340s\n\nAfter:\nreal  1m12.324s\nuser  3m22.718s\nsys 0m8.320s\n\nChange-Id: If18e9e79e06cdf1676692e5efacb682bf93889c3\n"
    },
    {
      "commit": "0526f5af91cc6b986e0b439577de0b93f9e5354c",
      "tree": "c046c355623776eef6e9f138db53935709a8dcff",
      "parents": [
        "ea33c3041e8db74d79a188703c9ec9c3879f9c1b",
        "fdbd13c7af91a042eda753e436eeebf0e1937250"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Thu Sep 03 18:44:06 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Sep 03 18:44:06 2015 +0000"
      },
      "message": "Merge \"Some fixes for the CC collector.\""
    },
    {
      "commit": "fdbd13c7af91a042eda753e436eeebf0e1937250",
      "tree": "c1fb370c9a4a30b9e589802c9c75dcc4919fc6e9",
      "parents": [
        "fe3879e6011f629d0dd6b04fab00b9496bd4ea08"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Wed Sep 02 16:16:58 2015 -0700"
      },
      "committer": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Thu Sep 03 10:45:21 2015 -0700"
      },
      "message": "Some fixes for the CC collector.\n\n- Remove a DCHECK in DisableMarkingCheckpoint, which caused\n  occasional (false) failures.\n- Check the thread-local GetWeakRefAccessEnabled in boxed lambdas weak\n  access.\n- Add missing BroadcastForNewAllocationRecords and\n  BroadcastForNewWeakBoxedLambdas. The lack of the former caused\n  occasional deadlocks in the ddmc test.\n- Remove the \u0027ensure system weaks disallowed\u0027 calls, which weren\u0027t\n  useful and dead.\n\nBug: 12687968\nChange-Id: I33850c8d12e6e1a3aed1c2bb18eba263cbab76e8\n"
    },
    {
      "commit": "ea33c3041e8db74d79a188703c9ec9c3879f9c1b",
      "tree": "99cb73727169f6f5b57717f879c8398b2283ccd3",
      "parents": [
        "2e8e4ff1b7d78a236c238651dbc0b58f33966c0a",
        "c21e4e67861f38e2ebce3cce633d01fcb8de5f1f"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Thu Sep 03 17:21:15 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Sep 03 17:21:15 2015 +0000"
      },
      "message": "Merge \"Make format args explicit in DocString.\""
    },
    {
      "commit": "c21e4e67861f38e2ebce3cce633d01fcb8de5f1f",
      "tree": "1ddaa3d51fa4f4cf35761d722e29bd6dfe68e630",
      "parents": [
        "ce209462cc1a7ce235e5ac0d0e6db6b402f73441"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Mon Aug 31 16:16:14 2015 -0700"
      },
      "committer": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Thu Sep 03 10:17:16 2015 -0700"
      },
      "message": "Make format args explicit in DocString.\n\nPreviously it was not clear that passing a single argument to\nDocString.text, DocString.append, or DocString.uri would be treated as\na format string. With this change, the \u0027text\u0027, \u0027append\u0027, and \u0027uri\u0027\nmethods take literal strings, and the new \u0027format\u0027, \u0027appendFormat\u0027,\nand \u0027formattedUri\u0027 methods take format strings.\n\nBug: 23782192\nChange-Id: I9a094575f0831de6659033052305f918c71ac8b7\n"
    },
    {
      "commit": "05792b98980741111b4d0a24d68cff2a8e070a3a",
      "tree": "bad79a387bcbdaefc87c07b388099960ca9caff3",
      "parents": [
        "c26b4512a01d46756683a4f5e186a0b7f397f251"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Aug 03 11:56:49 2015 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Sep 03 17:30:57 2015 +0100"
      },
      "message": "ART: Move DexCache arrays to native.\n\nThis CL has a companion CL in libcore/\n    https://android-review.googlesource.com/162985\n\nChange-Id: Icbc9e20ad1b565e603195b12714762bb446515fa\n"
    },
    {
      "commit": "2e8e4ff1b7d78a236c238651dbc0b58f33966c0a",
      "tree": "7b83b227bbaa36465f313542bba9206ac631a8fd",
      "parents": [
        "f7432c60a1d6385ff3dea9b44305007b2bcc1ed1",
        "145acc5361deb769eed998f057bc23abaef6e116"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Sep 03 13:33:49 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Sep 03 13:33:49 2015 +0000"
      },
      "message": "Merge \"Revert \"Optimizing: Tag basic block allocations with their source.\"\""
    },
    {
      "commit": "145acc5361deb769eed998f057bc23abaef6e116",
      "tree": "3d66a0b44e1ac927156eec6e6488de5fd52b982b",
      "parents": [
        "91e11c0c840193c6822e66846020b6647de243d5"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Sep 03 13:33:25 2015 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Sep 03 13:33:25 2015 +0000"
      },
      "message": "Revert \"Optimizing: Tag basic block allocations with their source.\"\n\nReverting so that we can have more discussion about the STL API.\n\nThis reverts commit 91e11c0c840193c6822e66846020b6647de243d5.\n\nChange-Id: I187fe52f2c16b6e7c5c9d49c42921eb6c7063dba\n"
    },
    {
      "commit": "f7432c60a1d6385ff3dea9b44305007b2bcc1ed1",
      "tree": "52e509a6343740b629cb75495deadbd8ad384713",
      "parents": [
        "86d92066df8323d5ee7ac7e9c061a79343a82fd8",
        "91e11c0c840193c6822e66846020b6647de243d5"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Sep 03 13:21:07 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Sep 03 13:21:07 2015 +0000"
      },
      "message": "Merge \"Optimizing: Tag basic block allocations with their source.\""
    },
    {
      "commit": "91e11c0c840193c6822e66846020b6647de243d5",
      "tree": "0c5398ef59c464c1848afd0113c74b6aeb75cf42",
      "parents": [
        "f9f6441c665b5ff9004d3ed55014f46d416fb1bb"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Sep 02 17:03:22 2015 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Sep 03 13:09:37 2015 +0100"
      },
      "message": "Optimizing: Tag basic block allocations with their source.\n\nReplace GrowableArray with ArenaVector in HBasicBlock and,\nto track the source of allocations, assign one new and two\nQuick\u0027s arena allocation types to these vectors. Rename\nkArenaAllocSuccessor to kArenaAllocSuccessors.\n\nBug: 23736311\nChange-Id: I984aef6e615ae2380a532f5c6726af21015f43f5\n"
    },
    {
      "commit": "86d92066df8323d5ee7ac7e9c061a79343a82fd8",
      "tree": "7b83b227bbaa36465f313542bba9206ac631a8fd",
      "parents": [
        "6d889e0e5004ae4d548e6c623a1218f010d1e89b",
        "2a7c1ef95c850abae915b3a59fbafa87e6833967"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Sep 03 10:23:28 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Sep 03 10:23:28 2015 +0000"
      },
      "message": "Merge \"Add more dwarf debug line info for Optimized methods.\""
    },
    {
      "commit": "2a7c1ef95c850abae915b3a59fbafa87e6833967",
      "tree": "7b83b227bbaa36465f313542bba9206ac631a8fd",
      "parents": [
        "6d889e0e5004ae4d548e6c623a1218f010d1e89b"
      ],
      "author": {
        "name": "Yevgeny Rouban",
        "email": "yevgeny.y.rouban@intel.com",
        "time": "Wed Jul 22 18:36:24 2015 +0600"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Sep 03 10:38:41 2015 +0100"
      },
      "message": "Add more dwarf debug line info for Optimized methods.\n\nOptimizing compiler generates minimum debug line info that\nis built using the dex_pc information about suspend points.\nThis is not enough for performance and debugging needs.\n\nThis CL generates additional debug line information for\ninstructions which have known dex_pc and it ensures that\nwhole call sites are mapped (as opposed to suspend points\nwhich map only one instruction past the function call).\n\nBug: 23157336\nChange-Id: I9f2b1c2038e3560847c175b8121cf9496b8b58fa\nSigned-off-by: Yevgeny Rouban \u003cyevgeny.y.rouban@intel.com\u003e\n"
    },
    {
      "commit": "6d889e0e5004ae4d548e6c623a1218f010d1e89b",
      "tree": "5de99aa4f6293e5e216cf2242a3901ac112a9d97",
      "parents": [
        "1c9d1eed31565cc0b21689b5530ca0ac5d35c68a",
        "f54cde646bbf5df7c506b42fce53a24ce7d8a2e9"
      ],
      "author": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Thu Sep 03 00:21:39 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Sep 03 00:21:39 2015 +0000"
      },
      "message": "Merge \"Increase max stack frame for sanitizers to handle x86.\""
    },
    {
      "commit": "f54cde646bbf5df7c506b42fce53a24ce7d8a2e9",
      "tree": "5de99aa4f6293e5e216cf2242a3901ac112a9d97",
      "parents": [
        "1c9d1eed31565cc0b21689b5530ca0ac5d35c68a"
      ],
      "author": {
        "name": "Ivan Krasin",
        "email": "krasin@google.com",
        "time": "Wed Sep 02 11:34:36 2015 -0700"
      },
      "committer": {
        "name": "Ivan Krasin",
        "email": "krasin@google.com",
        "time": "Wed Sep 02 17:03:50 2015 -0700"
      },
      "message": "Increase max stack frame for sanitizers to handle x86.\n\nCurrently, when building asan-ified Android image\nfor aosp_x86-eng, it surpasses the limit for the\nstack frame size and stops the compilation.\n\nThe resulting image (after increasing the limit)\nwas tested in the emulator.\n\nChange-Id: I99c4871f38abab526bdf28575f44400432ec61ba\n"
    },
    {
      "commit": "1c9d1eed31565cc0b21689b5530ca0ac5d35c68a",
      "tree": "455a4d11f8a8c6113e762209689f878d19446d58",
      "parents": [
        "f47869f6d29eecc66556bd213547331e10d0304e",
        "fc8d247275d06047c652abbdd368fe784bf85e67"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Wed Sep 02 22:03:14 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Sep 02 22:03:14 2015 +0000"
      },
      "message": "Merge \"Fix native annotations returning TypeNotPresentException.\""
    },
    {
      "commit": "fc8d247275d06047c652abbdd368fe784bf85e67",
      "tree": "8b71dd7c2a5c2f95c8f2c158016995718c023d93",
      "parents": [
        "fe3879e6011f629d0dd6b04fab00b9496bd4ea08"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Wed Sep 02 13:52:20 2015 -0700"
      },
      "committer": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Wed Sep 02 14:56:43 2015 -0700"
      },
      "message": "Fix native annotations returning TypeNotPresentException.\n\nAlso adds test cases for inner classes and TypeNotPresentException.\n\nChange-Id: I28041af455f09b43fcf0b07b79b5a21d4741079b\n"
    },
    {
      "commit": "f47869f6d29eecc66556bd213547331e10d0304e",
      "tree": "52e2c5a0227e9990aa87185c39f359aa879ffab8",
      "parents": [
        "1208ab38356ec1a91b5fe0c509baa5a6f46d1aff",
        "f9f6441c665b5ff9004d3ed55014f46d416fb1bb"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Sep 02 19:59:19 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Sep 02 19:59:19 2015 +0000"
      },
      "message": "Merge \"Optimizing: Tag Arena allocations with their source.\""
    }
  ],
  "next": "f9f6441c665b5ff9004d3ed55014f46d416fb1bb"
}
