)]}'
{
  "log": [
    {
      "commit": "512e04d1ea7fb33e3992715fe55be8a834d4a79c",
      "tree": "5e15766dd314e7a3ae8b3229c4b36bfb843b5a5e",
      "parents": [
        "7d8c6776d7bdcc04411154aa215ba5909939192a"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 27 17:21:24 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 27 17:21:24 2015 +0000"
      },
      "message": "Fix typos spotted by Andreas.\n\nChange-Id: I564b4bc5995d91f4c6c4e4f2427ed7c279cb8740\n"
    },
    {
      "commit": "7d8c6776d7bdcc04411154aa215ba5909939192a",
      "tree": "3ef92b5ecf85285cbcc38ccb8b5457e16a1174c8",
      "parents": [
        "d0056ceab8a78d5cfc0b4e06bce548b2d1cf1fef",
        "a0466e1773ec1db32c4b3d04b0416ffef5005b39"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 27 15:22:53 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 27 15:22:54 2015 +0000"
      },
      "message": "Merge \"GVN HClinitCheck nodes.\""
    },
    {
      "commit": "a0466e1773ec1db32c4b3d04b0416ffef5005b39",
      "tree": "83901e77017d4fdd89b00936a76390b2c0c32c05",
      "parents": [
        "c4181826dcd2b2e484a5b01871f49680881ad379"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 27 15:00:40 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 27 15:00:40 2015 +0000"
      },
      "message": "GVN HClinitCheck nodes.\n\nChange-Id: I5c79caadd57d10214a44149fda53e9e185ac7eca\n"
    },
    {
      "commit": "d0056ceab8a78d5cfc0b4e06bce548b2d1cf1fef",
      "tree": "20894b04ba592ed0ebb1c097d440602b3f9c0d5e",
      "parents": [
        "92baf2c03f155df3ead6d7f55f3a605e120eb11e",
        "0624a27b9a2951bfcf23321a714543e137836904"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Mar 27 14:13:34 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 27 14:13:35 2015 +0000"
      },
      "message": "Merge \"Include pid in trace metadata\""
    },
    {
      "commit": "0624a27b9a2951bfcf23321a714543e137836904",
      "tree": "c97c0627b7d564881e18d4d66ccd66221fc72a30",
      "parents": [
        "03910065cd025ecb07781b85c2240be69c202d75"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Mar 26 15:47:54 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Mar 27 07:06:59 2015 -0700"
      },
      "message": "Include pid in trace metadata\n\nChange-Id: I5d23fc7da94c1a344850833dfbbaa330fdbe28a7\n"
    },
    {
      "commit": "92baf2c03f155df3ead6d7f55f3a605e120eb11e",
      "tree": "466a172c72b5b0115d1db62d9d390804af619479",
      "parents": [
        "c4181826dcd2b2e484a5b01871f49680881ad379",
        "d75948ac93a4a317feaf136cae78823071234ba5"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 27 12:20:16 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 27 12:20:17 2015 +0000"
      },
      "message": "Merge \"Intrinsify String.compareTo.\""
    },
    {
      "commit": "d75948ac93a4a317feaf136cae78823071234ba5",
      "tree": "7593fb8c1ba2b67decdaa967b6348501f58d8b9d",
      "parents": [
        "b3665e3dfdd23cc7a2f17a0b53bb16205bf4151f"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 27 09:53:16 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 27 12:01:40 2015 +0000"
      },
      "message": "Intrinsify String.compareTo.\n\nChange-Id: Ia540df98755ac493fe61bd63f0bd94f6d97fbb57\n"
    },
    {
      "commit": "c4181826dcd2b2e484a5b01871f49680881ad379",
      "tree": "d66c717f092eea93bc062015707e308e96e6cf1a",
      "parents": [
        "0cf90d5d256a56fc90869c9d1aed7aeb594d0742",
        "f6468109a49aff6e4a1d28787de625bfb214a761"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Mar 27 11:14:05 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 27 11:14:06 2015 +0000"
      },
      "message": "Merge \"ART: Fix IsInt when N\u003d\u003d32, add tests\""
    },
    {
      "commit": "f6468109a49aff6e4a1d28787de625bfb214a761",
      "tree": "a662906fca20ace8fb42ebe4872822d00015596c",
      "parents": [
        "03910065cd025ecb07781b85c2240be69c202d75"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Mar 27 10:31:38 2015 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Mar 27 11:02:20 2015 +0000"
      },
      "message": "ART: Fix IsInt when N\u003d\u003d32, add tests\n\nImplicit type conversion caused IsInt to always return true for N\u003d\u003d32\non 32-bit platforms. This patch templetizes the function to avoid\nthe conversion and adds tests of this and similar functions.\n\nChange-Id: Ie526b68b7c3e7cb7b658253d51840794224785fe\n"
    },
    {
      "commit": "0cf90d5d256a56fc90869c9d1aed7aeb594d0742",
      "tree": "77c784638196f3aef2dd343def91ac68f21ab396",
      "parents": [
        "ccd8cb0695a1723e5ea7869fc16107b888fbabf7",
        "79829cb3a36fd589df957da118792e4c69abc02b"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 27 10:54:41 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 27 10:54:42 2015 +0000"
      },
      "message": "Merge \"Fix run-all-tests script when --always-clean is used\""
    },
    {
      "commit": "ccd8cb0695a1723e5ea7869fc16107b888fbabf7",
      "tree": "d402659a7de353c5cdd01fce0082ec2d5207c64d",
      "parents": [
        "b3665e3dfdd23cc7a2f17a0b53bb16205bf4151f",
        "356a1811f2f79d98194475fdbfb5f6b7768455b5"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Mar 27 10:52:11 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 27 10:52:12 2015 +0000"
      },
      "message": "Merge \"Quick: Finding upper half of kMirOpCheckPart2 should passthough empty blocks\""
    },
    {
      "commit": "79829cb3a36fd589df957da118792e4c69abc02b",
      "tree": "934def496ec923c244b0c3611c3405c6e4514185",
      "parents": [
        "b3665e3dfdd23cc7a2f17a0b53bb16205bf4151f"
      ],
      "author": {
        "name": "Goran Jakovljevic",
        "email": "Goran.Jakovljevic@imgtec.com",
        "time": "Fri Mar 27 11:48:25 2015 +0100"
      },
      "committer": {
        "name": "Goran Jakovljevic",
        "email": "Goran.Jakovljevic@imgtec.com",
        "time": "Fri Mar 27 11:48:25 2015 +0100"
      },
      "message": "Fix run-all-tests script when --always-clean is used\n\nChange-Id: Icd44776e77c00f789bb579b6e55241abdfc0e68d\n"
    },
    {
      "commit": "356a1811f2f79d98194475fdbfb5f6b7768455b5",
      "tree": "d3b39e9b1f2d170386a71c5d0024f70579e43bae",
      "parents": [
        "03910065cd025ecb07781b85c2240be69c202d75"
      ],
      "author": {
        "name": "Pavel Vyssotski",
        "email": "pavel.n.vyssotski@intel.com",
        "time": "Fri Mar 27 15:23:02 2015 +0600"
      },
      "committer": {
        "name": "Pavel Vyssotski",
        "email": "pavel.n.vyssotski@intel.com",
        "time": "Fri Mar 27 15:40:11 2015 +0600"
      },
      "message": "Quick: Finding upper half of kMirOpCheckPart2 should passthough empty blocks\n\nMir2Lir::InitReferenceVRegs trying to find throwing instruction for\nkMirOpCheckPart2 should traverse possible empty blocks which compiler\noptimizations could generate between them.\n\nChange-Id: I2ab29dd36635fd4c4ef2dd81b51e571e206775e6\nSigned-off-by: Pavel Vyssotski \u003cpavel.n.vyssotski@intel.com\u003e\n"
    },
    {
      "commit": "b3665e3dfdd23cc7a2f17a0b53bb16205bf4151f",
      "tree": "d86be714298806cfcd6a16be674573369474e8f7",
      "parents": [
        "03910065cd025ecb07781b85c2240be69c202d75",
        "09ed1a3125849ec6ac07cb886e3c502e1dcfada2"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 27 09:29:06 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 27 09:29:07 2015 +0000"
      },
      "message": "Merge \"[optimizing] Implement X86 intrinsic support\""
    },
    {
      "commit": "09ed1a3125849ec6ac07cb886e3c502e1dcfada2",
      "tree": "d86be714298806cfcd6a16be674573369474e8f7",
      "parents": [
        "03910065cd025ecb07781b85c2240be69c202d75"
      ],
      "author": {
        "name": "Mark Mendell",
        "email": "mark.p.mendell@intel.com",
        "time": "Wed Mar 25 08:30:06 2015 -0400"
      },
      "committer": {
        "name": "Mark Mendell",
        "email": "mark.p.mendell@intel.com",
        "time": "Thu Mar 26 21:28:33 2015 -0400"
      },
      "message": "[optimizing] Implement X86 intrinsic support\n\nImplement the supported intrinsics for X86.\n\nEnhance the graph visualizer to print \u003cU\u003e for unallocated locations, to\nallow calling the graph dumper from within register allocation for\ndebugging purposes.\n\nChange-Id: I3b0319eb70a9a4ea228f67065b4c52d13a1ae775\nSigned-off-by: Mark Mendell \u003cmark.p.mendell@intel.com\u003e\n"
    },
    {
      "commit": "03910065cd025ecb07781b85c2240be69c202d75",
      "tree": "ad6f14345c5a8265f78de11cccb737642a6da539",
      "parents": [
        "83aae275268b021d23d2dc6708bd9cef3d7e4b50",
        "16f149c2cb43a14d8f33d7d0fa36cd784e900f07"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Mar 26 22:44:03 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 26 22:44:04 2015 +0000"
      },
      "message": "Merge \"ART: Change RETURN_OBJECT verification for arrays\""
    },
    {
      "commit": "83aae275268b021d23d2dc6708bd9cef3d7e4b50",
      "tree": "8c5eca4c2604e0edc1606ea151d78538098dc040",
      "parents": [
        "81adb4f8fd261be11d399d210029189e94888a9e",
        "d8565456d29f4ad05f11cf84d2d2dac488508e06"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Mar 26 22:34:57 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 26 22:34:57 2015 +0000"
      },
      "message": "Merge \"Fix ClassLinker::MayBeCalledWithDirectCodePointer for JIT\""
    },
    {
      "commit": "16f149c2cb43a14d8f33d7d0fa36cd784e900f07",
      "tree": "299d484c007d373c68e22008ddedfacbd0c044f2",
      "parents": [
        "cac51526bbd03947676a8d49700425b19a57e447"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Mar 23 10:10:20 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Mar 26 15:03:46 2015 -0700"
      },
      "message": "ART: Change RETURN_OBJECT verification for arrays\n\nArrays appear to be valid (as according to spec), even if their\ncomponents are erroneous. If a component is erroneous, it may not\nhave loaded superclass or interface information, and so fail a\ndirect check for assignability.\n\nAdd a cutout that checks whether the declared return-type or the\nactual return-type are arrays with erroneous components (and if so,\nhave the same \u0027depth\u0027). In that case, generate a soft instead of a\nhard error.\n\nAlso includes a fix to DumpClass.\n\nBug: 19683465\nChange-Id: Ie73de03adeb0af7e939370d7363684fe125d7994\n"
    },
    {
      "commit": "d8565456d29f4ad05f11cf84d2d2dac488508e06",
      "tree": "8c5eca4c2604e0edc1606ea151d78538098dc040",
      "parents": [
        "81adb4f8fd261be11d399d210029189e94888a9e"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Mar 26 09:41:50 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Mar 26 13:34:27 2015 -0700"
      },
      "message": "Fix ClassLinker::MayBeCalledWithDirectCodePointer for JIT\n\nCurrently, we don\u0027t know if another method has a direct code\npointer or not. This should fix the case where breakpoints\noccasionally don\u0027t work with JIT.\n\nThe JIT now also checks that a method doesn\u0027t have any breakpoints\nbefore starting to compile it.\n\nBug: 17950037\n\nChange-Id: I17cfe874fe4825beba23903a5053d5cb27e106cb\n"
    },
    {
      "commit": "81adb4f8fd261be11d399d210029189e94888a9e",
      "tree": "087d55ab3582eecfb56892aae5b95f76f1b0f7de",
      "parents": [
        "55e48144384016c7666bf2b59e2d1befd44385ba",
        "d6c1ec579cd2355daab9adf58274d32f7035576c"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Mar 26 18:12:55 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 26 18:12:56 2015 +0000"
      },
      "message": "Merge \"New localhost failures....\""
    },
    {
      "commit": "d6c1ec579cd2355daab9adf58274d32f7035576c",
      "tree": "087d55ab3582eecfb56892aae5b95f76f1b0f7de",
      "parents": [
        "55e48144384016c7666bf2b59e2d1befd44385ba"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Mar 26 18:08:59 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Mar 26 18:08:59 2015 +0000"
      },
      "message": "New localhost failures....\n\nChange-Id: Id3992f3c04dfa8fad130073ee9ea4f4d715c8432\n"
    },
    {
      "commit": "55e48144384016c7666bf2b59e2d1befd44385ba",
      "tree": "503ca487a925325ab6a6ac109bc0e2491d3c190f",
      "parents": [
        "cac51526bbd03947676a8d49700425b19a57e447",
        "96cd87ad32653ad334600fe302edea5658392c41"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Mar 26 18:03:00 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 26 18:03:01 2015 +0000"
      },
      "message": "Merge \"Add a script to run jdwp tests on the chrome buildbot.\""
    },
    {
      "commit": "96cd87ad32653ad334600fe302edea5658392c41",
      "tree": "94569d42530827fb9cebc3b11e4d2ec599046887",
      "parents": [
        "410f5cfe4ff70bc8a151216afae4e204f51aff37"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Mar 26 16:48:29 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Mar 26 17:59:19 2015 +0000"
      },
      "message": "Add a script to run jdwp tests on the chrome buildbot.\n\nChange-Id: Ia702fd884f10abcb0887f4964c7df3c04a508984\n"
    },
    {
      "commit": "cac51526bbd03947676a8d49700425b19a57e447",
      "tree": "40d7fd63d527286a82c6e6d0a288c0a8a840d0b3",
      "parents": [
        "aa23b169f8c996380bcee3a7032da2599c6211ec",
        "74fc513982fa74b1120f7b8546fc825fc406e1b1"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Mar 26 15:18:57 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 26 15:18:58 2015 +0000"
      },
      "message": "Merge \"ART: Define IsInt when N\u003d\u003dkBitsPerIntPtrT\""
    },
    {
      "commit": "74fc513982fa74b1120f7b8546fc825fc406e1b1",
      "tree": "bb6d78e147eb0eb6f4134c2ee1c7aa24b51f7644",
      "parents": [
        "5eae0b6112aef6b1bc3a24427e80f1ef96e513dc"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Mar 26 15:11:45 2015 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Mar 26 15:11:45 2015 +0000"
      },
      "message": "ART: Define IsInt when N\u003d\u003dkBitsPerIntPtrT\n\n\u0027utils.h\u0027 contains two implementations of the IsInt query, one of\nwhich is defined for bit sizes \u003c\u003d kBitsPerIntPtrT, while the other\nonly for sizes \u003c kBitsPerIntPtrT. This patch unifies the behaviour\nand fixes the breakage caused by it.\n\nChange-Id: I4f5589b1a36b6c24926e50574fbca528c33d701f\n"
    },
    {
      "commit": "aa23b169f8c996380bcee3a7032da2599c6211ec",
      "tree": "c0122239bf0be80b0f1734c32cc5b7f9593c2bd6",
      "parents": [
        "5eae0b6112aef6b1bc3a24427e80f1ef96e513dc",
        "6343411e52d2a59cd716cb47a85ebd0d68e61a3c"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Thu Mar 26 14:57:37 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 26 14:57:38 2015 +0000"
      },
      "message": "Merge \"Store odex files in oat/\u003cisa\u003e/ directory.\""
    },
    {
      "commit": "5eae0b6112aef6b1bc3a24427e80f1ef96e513dc",
      "tree": "c26fc49bbc74615e7f0b9657aaf3757a8282d7a9",
      "parents": [
        "c8924c6ea9e83ba3832dd5551df38ab06f4aaca9",
        "8d5b8b295930aaa43255c4f0b74ece3ee8b43a47"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Mar 26 14:11:53 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 26 14:11:53 2015 +0000"
      },
      "message": "Merge \"ART: Force constants into the entry block\""
    },
    {
      "commit": "8d5b8b295930aaa43255c4f0b74ece3ee8b43a47",
      "tree": "c26fc49bbc74615e7f0b9657aaf3757a8282d7a9",
      "parents": [
        "c8924c6ea9e83ba3832dd5551df38ab06f4aaca9"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Mar 24 10:51:52 2015 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Mar 26 14:10:03 2015 +0000"
      },
      "message": "ART: Force constants into the entry block\n\nOptimizations such as GVN and BCE make the assumption that all\nconstants are located in the entry block of the CFG, but not all\npasses adhere to this rule.\n\nThis patch makes constructors of constants private and only accessible\nto friend classes - HGraph for int/long constants and SsaBuilder for\nfloat/double - which ensure that they are placed correctly and not\nduplicated.\n\nNote that the ArenaAllocatorAdapter was modified to not increment\nthe ArenaAllocator\u0027s internal reference counter in order to allow\nfor use of ArenaSafeMap inside an arena-allocated objects. Because\ntheir destructor is not called, the counter does not get decremented.\n\nChange-Id: I36a4fa29ae34fb905cdefd482ccbf386cff14166\n"
    },
    {
      "commit": "c8924c6ea9e83ba3832dd5551df38ab06f4aaca9",
      "tree": "94d7d6016c5a58d6c5f31d8350330c8025baa014",
      "parents": [
        "9ed05c4cf76aaeee48a1eb5bbae659b0acbabe67",
        "790412959a6413a585f45fc5f77fe7106311a00c"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Mar 26 10:45:51 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 26 10:45:52 2015 +0000"
      },
      "message": "Merge \"Use the original invoke type when inlining.\""
    },
    {
      "commit": "790412959a6413a585f45fc5f77fe7106311a00c",
      "tree": "94d7d6016c5a58d6c5f31d8350330c8025baa014",
      "parents": [
        "9ed05c4cf76aaeee48a1eb5bbae659b0acbabe67"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Mar 26 10:05:54 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Mar 26 10:05:54 2015 +0000"
      },
      "message": "Use the original invoke type when inlining.\n\nWhen resolving a method through the compiler driver, the code makes\nsure the call in the DEX bytecode matches the kind of method found,\nto check for IncompatibleClassChangeError. Because when we sharpen\nan invoke virtual, we transform the invoke kind to direct, we must not\nuse the new kind, but the one in DEX.\n\nChange-Id: Iaf77b27b529c659ea48ffb19f46427552c9e3654\n"
    },
    {
      "commit": "6343411e52d2a59cd716cb47a85ebd0d68e61a3c",
      "tree": "64f9be60771f0e40fcea0706ab14afffc95f9d3a",
      "parents": [
        "19c1c124fb92a13c5f59dfde8f638b7bf9b73abb"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Mon Mar 16 14:32:16 2015 -0700"
      },
      "committer": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Wed Mar 25 14:44:44 2015 -0700"
      },
      "message": "Store odex files in oat/\u003cisa\u003e/ directory.\n\nPreviously odex files were stored alongside the dex location as:\n  dex location: /foo/bar/base.apk\n  odex location: /foo/bar/\u003cisa\u003e/base.odex\n\nThis changes where odex files are stored, adding an \"oat\" directory:\n  dex location: /foo/bar/base.apk\n  odex location: /foo/bar/oat/\u003cisa\u003e/base.odex\n\nSee also the corresponding change in platform/build and\nplatform/frameworks/native.\n\nBug: 19550105\nChange-Id: I4c6be4f0c41ff175904846db8e360c4af815b265\n"
    },
    {
      "commit": "9ed05c4cf76aaeee48a1eb5bbae659b0acbabe67",
      "tree": "89e46b99b6a545f1b8d35ad80c10293a4dd990ec",
      "parents": [
        "19c1c124fb92a13c5f59dfde8f638b7bf9b73abb",
        "51b1f7bd57527790ccaa6529eacd13fd7117bd71"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Mar 25 21:14:16 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 25 21:14:17 2015 +0000"
      },
      "message": "Merge \"Mark the tests as failing for now.\""
    },
    {
      "commit": "51b1f7bd57527790ccaa6529eacd13fd7117bd71",
      "tree": "89e46b99b6a545f1b8d35ad80c10293a4dd990ec",
      "parents": [
        "19c1c124fb92a13c5f59dfde8f638b7bf9b73abb"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Mar 25 21:13:05 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Mar 25 21:13:05 2015 +0000"
      },
      "message": "Mark the tests as failing for now.\n\nNeed to investigate what is going on with the network on\nthe devices...\n\nChange-Id: Ic308e768989bfbdbb086a4d09e31a7cc9a327d70\n"
    },
    {
      "commit": "19c1c124fb92a13c5f59dfde8f638b7bf9b73abb",
      "tree": "90597bf2bdb53a61215556824414c45ee24e0ed0",
      "parents": [
        "651b4fb337eba9971bb830d9e037c633e29a6eba",
        "0a38a0e670076fa49c6533a0a3459f3ce61e801d"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Mar 25 17:56:53 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 25 17:56:54 2015 +0000"
      },
      "message": "Merge \"Make sure localhost is enabled on testing devices.\""
    },
    {
      "commit": "0a38a0e670076fa49c6533a0a3459f3ce61e801d",
      "tree": "90597bf2bdb53a61215556824414c45ee24e0ed0",
      "parents": [
        "651b4fb337eba9971bb830d9e037c633e29a6eba"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Mar 25 17:22:34 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Mar 25 17:22:34 2015 +0000"
      },
      "message": "Make sure localhost is enabled on testing devices.\n\nChange-Id: I9057dd77a8c760cc5881f3b2eaeb14a0d9910b51\n"
    },
    {
      "commit": "651b4fb337eba9971bb830d9e037c633e29a6eba",
      "tree": "06cb3f4534205d2a8947e211834806d6343ead15",
      "parents": [
        "39b4bf99a1167cd9d5e5454059dd360e67f1eac1",
        "9437b78780f9e6ffa5797ebe82de8e8d7f3a5ed6"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Mar 25 17:19:07 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 25 17:19:08 2015 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Inline across dex files.\"\"\""
    },
    {
      "commit": "39b4bf99a1167cd9d5e5454059dd360e67f1eac1",
      "tree": "1536a13873faa1031901d003fb987522598c381f",
      "parents": [
        "3679a47027b40290018d0ccc50b996a15645dfef",
        "ab4a2f5995b79c2b5b28c91b419a2c91cb88e377"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Mar 25 17:15:21 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 25 17:15:22 2015 +0000"
      },
      "message": "Merge changes I4b3b4d90,I70e0d78f,I2848636f\n\n* changes:\n  Forbid the use of shifts in ShifterOperand in Thumb2\n  Make subs and adds alter flags when rn is an immediate\n  Inline long shift code\n"
    },
    {
      "commit": "9437b78780f9e6ffa5797ebe82de8e8d7f3a5ed6",
      "tree": "d99027ae9295f162865c01f9a8795ac8cda09b84",
      "parents": [
        "11e99b19f48576f1bb6d0993635b34b6e09c9832"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Mar 25 10:08:51 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Mar 25 17:13:54 2015 +0000"
      },
      "message": "Revert \"Revert \"Inline across dex files.\"\"\n\nThis reverts commit 6a816cf624ba56bf2872916d7b65b18fd9a411ef.\n\nChange-Id: I36cb524108786dd7996f2aea0443675be1f1b859\n"
    },
    {
      "commit": "3679a47027b40290018d0ccc50b996a15645dfef",
      "tree": "92c6fcbb8fe5c647eb06bb63277c90f36c319101",
      "parents": [
        "139cec015abd195727d5410dc313b483babeda10",
        "e5fed03772144595c0904faf3d6974cc55214c8c"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Wed Mar 25 17:10:11 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 25 17:10:12 2015 +0000"
      },
      "message": "Merge \"Support relative encoded dex locations in oat files.\""
    },
    {
      "commit": "139cec015abd195727d5410dc313b483babeda10",
      "tree": "4ac5501a8f66730eb176b93533cf80c920605d1d",
      "parents": [
        "410f5cfe4ff70bc8a151216afae4e204f51aff37",
        "6ae70962089e4af9718cc9b7c2b79a0c501c1844"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Mar 25 14:10:12 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 25 14:10:12 2015 +0000"
      },
      "message": "Merge \"Share dex register maps between stack maps when possible.\""
    },
    {
      "commit": "6ae70962089e4af9718cc9b7c2b79a0c501c1844",
      "tree": "3b7cd46ed7c7bab95dc258a29883297738138f6c",
      "parents": [
        "2f5904383a7b7ffb741c8839ec3c60762860bad3"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Mar 18 16:31:28 2015 +0000"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Mar 25 13:50:23 2015 +0000"
      },
      "message": "Share dex register maps between stack maps when possible.\n\nIf two stack maps have the same dex register map then one of them will\nreference the register map from the other instead of owning an\nindependent copy.\n\nThis saves around 1.5% of space.\n\nChange-Id: Ic2c2c81210c6c45a5c5f650f7ba82a46ff6f45e4\n"
    },
    {
      "commit": "410f5cfe4ff70bc8a151216afae4e204f51aff37",
      "tree": "39188e9067e312fc57fdee27056b28ace2872dde",
      "parents": [
        "5e0b8bf26a20d2cb834a55d2a03069505997aa02",
        "6e07183e822a32856da9eb60006989496e06a9cc"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Mar 25 12:49:56 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 25 12:49:56 2015 +0000"
      },
      "message": "Merge \"Quick: Fix \"select\" pattern to update data used for GC maps.\""
    },
    {
      "commit": "5e0b8bf26a20d2cb834a55d2a03069505997aa02",
      "tree": "db9165b3daa18d1d430b690b78c2d125bade3021",
      "parents": [
        "11e99b19f48576f1bb6d0993635b34b6e09c9832",
        "b2bd1c5f9171f35fa5b71ada42d1a9e11189428d"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Mar 25 12:31:22 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 25 12:31:22 2015 +0000"
      },
      "message": "Merge \"ART: Formatting and comments in BooleanSimplifier\""
    },
    {
      "commit": "b2bd1c5f9171f35fa5b71ada42d1a9e11189428d",
      "tree": "db9165b3daa18d1d430b690b78c2d125bade3021",
      "parents": [
        "11e99b19f48576f1bb6d0993635b34b6e09c9832"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Mar 25 11:17:37 2015 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Mar 25 12:30:26 2015 +0000"
      },
      "message": "ART: Formatting and comments in BooleanSimplifier\n\nChange-Id: I9a5aa3f2aa8b0a29d7b0f1e5e247397cf8e9e379\n"
    },
    {
      "commit": "6e07183e822a32856da9eb60006989496e06a9cc",
      "tree": "82f093c739c0806c2bbe9dc97780a0b919b72802",
      "parents": [
        "94ead7673f90a8199d926fe161d7d021202f0aa7"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Mar 25 11:13:39 2015 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Mar 25 11:13:39 2015 +0000"
      },
      "message": "Quick: Fix \"select\" pattern to update data used for GC maps.\n\nFollow-up to\n    https://android-review.googlesource.com/143222\n\nChange-Id: I1c12af9a19f76e64fd209f6cc2eaec5587b3083b\n"
    },
    {
      "commit": "ab4a2f5995b79c2b5b28c91b419a2c91cb88e377",
      "tree": "5c39b9f7ef283ee75d437903cfd10c3af49ff331",
      "parents": [
        "dc62c48937a6476ed9c0d739f6b3b5c26f758371"
      ],
      "author": {
        "name": "Guillaume \"Vermeille\" Sanchez",
        "email": "guillaumesa@google.com",
        "time": "Wed Mar 11 14:00:30 2015 +0000"
      },
      "committer": {
        "name": "Guillaume \"Vermeille\" Sanchez",
        "email": "guillaumesa@google.com",
        "time": "Wed Mar 25 10:19:27 2015 +0000"
      },
      "message": "Forbid the use of shifts in ShifterOperand in Thumb2\n\nChange-Id: I4b3b4d90f11f2dd0c9a274b724051fa98982fb19\n"
    },
    {
      "commit": "dc62c48937a6476ed9c0d739f6b3b5c26f758371",
      "tree": "fad0b70afa6ed42b60a08605f6deeff5ea745923",
      "parents": [
        "fd18f5ac060365286616cce773f8702d6246e4ca"
      ],
      "author": {
        "name": "Guillaume \"Vermeille\" Sanchez",
        "email": "guillaumesa@google.com",
        "time": "Wed Mar 11 14:30:31 2015 +0000"
      },
      "committer": {
        "name": "Guillaume \"Vermeille\" Sanchez",
        "email": "guillaumesa@google.com",
        "time": "Wed Mar 25 10:19:27 2015 +0000"
      },
      "message": "Make subs and adds alter flags when rn is an immediate\n\nChange-Id: I70e0d78f155bf806222ad12a324dbd8c8fe575a1\n"
    },
    {
      "commit": "fd18f5ac060365286616cce773f8702d6246e4ca",
      "tree": "23f63ca2dddadd2da573b027d6a7b632235a3b7f",
      "parents": [
        "72fad8dd9653c4c79b8a43f4c1d466282ec80cc6"
      ],
      "author": {
        "name": "Guillaume \"Vermeille\" Sanchez",
        "email": "guillaumesa@google.com",
        "time": "Wed Mar 11 14:57:40 2015 +0000"
      },
      "committer": {
        "name": "Guillaume \"Vermeille\" Sanchez",
        "email": "guillaumesa@google.com",
        "time": "Wed Mar 25 10:19:26 2015 +0000"
      },
      "message": "Inline long shift code\n\nChange-Id: I2848636f892e276507d04f4313987b9f4c80686b\n"
    },
    {
      "commit": "11e99b19f48576f1bb6d0993635b34b6e09c9832",
      "tree": "a56d002ba622ecce7f1310e8fac56adca6547d5a",
      "parents": [
        "ebfd062af849a915bd75eebd81c6fdea15b1d8d5",
        "e16dad1d6388b0305f13e2171308a77f42e7c682"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed Mar 25 08:47:02 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 25 08:47:02 2015 +0000"
      },
      "message": "Merge \"Emit 4 byte UTF-sequences in place of encoded surrogate pairs.\""
    },
    {
      "commit": "e16dad1d6388b0305f13e2171308a77f42e7c682",
      "tree": "a56d002ba622ecce7f1310e8fac56adca6547d5a",
      "parents": [
        "ebfd062af849a915bd75eebd81c6fdea15b1d8d5"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Feb 13 11:49:22 2015 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed Mar 25 08:46:51 2015 +0000"
      },
      "message": "Emit 4 byte UTF-sequences in place of encoded surrogate pairs.\n\nSymmetric with a5afcfc73141e5e378d79a326d0 which converts 4 byte UTF-8\nsequences to surrogate pairs.\n\nbug: 18848397\n\nChange-Id: I42adc275b7e0df0cbbd9d8a799e8b0447d8f5cae\n"
    },
    {
      "commit": "e5fed03772144595c0904faf3d6974cc55214c8c",
      "tree": "27c242e48cabd2543f472930d1ad7e2ab86557fe",
      "parents": [
        "b93581f857e36a62f690e26e78167f2abea0f033"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Wed Mar 18 08:21:11 2015 -0700"
      },
      "committer": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Tue Mar 24 12:48:09 2015 -0700"
      },
      "message": "Support relative encoded dex locations in oat files.\n\nNow when opening an oat file, the caller can pass an absolute dex\nlocation used to resolve the absolute path for any relative\nencoded dex locations in the oat file.\n\nBug: 19550105\nChange-Id: I6e9559afe4d86ac12cf0b90176b5ea696a83d0e7\n"
    },
    {
      "commit": "ebfd062af849a915bd75eebd81c6fdea15b1d8d5",
      "tree": "9f53251569ed32af7add31cf16206f255261b97e",
      "parents": [
        "3e690d11d26b3ae3891a03cdef88e7c2272109f5",
        "10f56cb6b4e39ed0032e9a23b179b557463e65ad"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Mar 24 19:24:09 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 24 19:24:10 2015 +0000"
      },
      "message": "Merge \"ART: Fix crash in gtests\""
    },
    {
      "commit": "10f56cb6b4e39ed0032e9a23b179b557463e65ad",
      "tree": "9f53251569ed32af7add31cf16206f255261b97e",
      "parents": [
        "3e690d11d26b3ae3891a03cdef88e7c2272109f5"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Mar 24 18:49:14 2015 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Mar 24 19:13:13 2015 +0000"
      },
      "message": "ART: Fix crash in gtests\n\nSsaLivenessAnalysis was crashing after change of iteration order in\n142377 because gtests do not always build reverse post order.\n\nChange-Id: If5ad5b7c52040b119c4415f0b942988049fa3c16\n"
    },
    {
      "commit": "3e690d11d26b3ae3891a03cdef88e7c2272109f5",
      "tree": "77e095dfb985ef472bf6acf36864d90466ed7f4e",
      "parents": [
        "b64b782f9ae7a94ecbbf64c83cbcdc7d716ba560",
        "579ea7d0d89a1d7f02c35ef1beb6328a37259735"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Mar 24 17:45:19 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 24 17:45:19 2015 +0000"
      },
      "message": "Merge \"Share the runtime arena for faster compile times.\""
    },
    {
      "commit": "b64b782f9ae7a94ecbbf64c83cbcdc7d716ba560",
      "tree": "df3aa814ff7762d681c50781c413fd510440ae61",
      "parents": [
        "2c2d00e8ca841aa2f57fa2f852e896378ef67144",
        "46e2a3915aa68c77426b71e95b9f3658250646b7"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Mar 24 17:31:29 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 24 17:31:31 2015 +0000"
      },
      "message": "Merge \"ART: Boolean simplifier\""
    },
    {
      "commit": "579ea7d0d89a1d7f02c35ef1beb6328a37259735",
      "tree": "c6f8d46af8b5e8f3e8f5f0ddaf43480fa53237d1",
      "parents": [
        "94ead7673f90a8199d926fe161d7d021202f0aa7"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Mar 24 17:28:38 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Mar 24 17:28:38 2015 +0000"
      },
      "message": "Share the runtime arena for faster compile times.\n\nUsing a shared arena has the downside of getting more contentions\nwhen requesting memory, but saves on compilation times because\nwe don\u0027t free the memory it allocated util the end of dex2oat.\n\nChange-Id: I353ced1db34539850ec639b6b228451b455a48ec\n"
    },
    {
      "commit": "46e2a3915aa68c77426b71e95b9f3658250646b7",
      "tree": "2b0a4470b05291894db73c631fe94f0fdff8c46b",
      "parents": [
        "bce0855ca1dbb1fa226c5b6a81760272ce0b64ef"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Mar 16 17:31:52 2015 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Mar 24 17:28:37 2015 +0000"
      },
      "message": "ART: Boolean simplifier\n\nThe optimization recognizes the negation pattern generated by \u0027javac\u0027\nand replaces it with a single condition. To this end, boolean values\nare now consistently assumed to be represented by an integer.\n\nThis is a first optimization which deletes blocks from the HGraph and\ndoes so by replacing the corresponding entries with null. Hence,\nexisting code can continue indexing the list of blocks with the block\nID, but must check for null when iterating over the list.\n\nChange-Id: I7779da69cfa925c6521938ad0bcc11bc52335583\n"
    },
    {
      "commit": "2c2d00e8ca841aa2f57fa2f852e896378ef67144",
      "tree": "c4050a4e6e9aa6f091ae042daf940ba0a1e72136",
      "parents": [
        "09aa354d0d7ff58cb9f028647d81a67648c9e0ba",
        "da4d79bc9a4aeb9da7c6259ce4c9c1c3bf545eb8"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Mar 24 17:00:58 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 24 17:01:00 2015 +0000"
      },
      "message": "Merge \"Unify ART\u0027s various implementations of bit_cast.\""
    },
    {
      "commit": "09aa354d0d7ff58cb9f028647d81a67648c9e0ba",
      "tree": "d49b3a0a353222252b425911749725b775f56f7b",
      "parents": [
        "af87659f462ac650009fce295097cae3dabce171",
        "6a816cf624ba56bf2872916d7b65b18fd9a411ef"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Mar 24 16:24:51 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 24 16:24:52 2015 +0000"
      },
      "message": "Merge \"Revert \"Inline across dex files.\"\""
    },
    {
      "commit": "6a816cf624ba56bf2872916d7b65b18fd9a411ef",
      "tree": "47d03a97a9b5101ea543beda55f29cce339bd06e",
      "parents": [
        "7e4c3508e4f5512650b63c41f7872a749e99aee9"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Mar 24 16:17:56 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Mar 24 16:17:56 2015 +0000"
      },
      "message": "Revert \"Inline across dex files.\"\n\nbug: 19904089\nbug: 19903495\n\nThis reverts commit 7e4c3508e4f5512650b63c41f7872a749e99aee9.\n\nChange-Id: I15df746b5f1882cce78eedde6c05c0d3b69bfa4a\n"
    },
    {
      "commit": "da4d79bc9a4aeb9da7c6259ce4c9c1c3bf545eb8",
      "tree": "151dd61c4b6a8fd512ea4c2c862af28b02f4ed9c",
      "parents": [
        "af87659f462ac650009fce295097cae3dabce171"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Mar 24 14:36:11 2015 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Mar 24 16:02:21 2015 +0000"
      },
      "message": "Unify ART\u0027s various implementations of bit_cast.\n\nART had several implementations of art::bit_cast:\n\n1. one in runtime/base/casts.h, declared as:\n\n   template \u003cclass Dest, class Source\u003e\n   inline Dest bit_cast(const Source\u0026 source);\n\n2. another one in runtime/utils.h, declared as:\n\n   template\u003ctypename U, typename V\u003e\n   static inline V bit_cast(U in);\n\n3. and a third local version, in runtime/memory_region.h,\n   similar to the previous one:\n\n   template\u003ctypename Source, typename Destination\u003e\n   static Destination MemoryRegion::local_bit_cast(Source in);\n\nThis CL removes versions 2. and 3. and changes their callers\nto use 1. instead.  That version was chosen over the others\nas:\n- it was the oldest one in the code base; and\n- its syntax was closer to the standard C++ cast operators,\n  as it supports the following use:\n\n    bit_cast\u003cDestination\u003e(source)\n\n  since `Source\u0027 can be deduced from `source\u0027.\n\nChange-Id: I7334fd5d55bf0b8a0c52cb33cfbae6894ff83633\n"
    },
    {
      "commit": "af87659f462ac650009fce295097cae3dabce171",
      "tree": "f203c9eed1543f6393175b2431ac6b43deb1b43c",
      "parents": [
        "94ead7673f90a8199d926fe161d7d021202f0aa7",
        "eb07669e9784ccb41d75df180727e57fc4520e28"
      ],
      "author": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Tue Mar 24 14:12:35 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 24 14:12:35 2015 +0000"
      },
      "message": "Merge \"JDWP: Optimized single step during debugging\""
    },
    {
      "commit": "eb07669e9784ccb41d75df180727e57fc4520e28",
      "tree": "bc15da11ee0ce906252a33371f8f59138bc5a38f",
      "parents": [
        "bce0855ca1dbb1fa226c5b6a81760272ce0b64ef"
      ],
      "author": {
        "name": "Daniel Mihalyi",
        "email": "daniel.mihalyi@mattakis.com",
        "time": "Fri Aug 22 17:33:31 2014 +0200"
      },
      "committer": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Tue Mar 24 14:43:57 2015 +0100"
      },
      "message": "JDWP: Optimized single step during debugging\n\nFor single stepping full deoptimization and undeoptimizations were\nperformed with significant overhead, because every code will be\nexecuted in interpreted mode during a single step, even if it is not\nstrictly required.\n\nFor example, if we have a computation heavy method call and we would\nlike to step over it, that method (and all the methods called from it)\nwill run in interpreter mode. This can take so long in some cases\n(e.g. multiple minutes) that it makes debugging process unusable.\n\nThe solution for this limitation is not using full deoptimizations for\nsingle steps and force interpreter only for those methods that we are\nabout to step into, and require stack deoptimization before step outs.\n\nBug: 17750566\nBug: 18094282\nBug: https://code.google.com/p/android/issues/detail?id\u003d77984\n\nChange-Id: I683c52465883146c4c84ec47bf96f8efd920527f\nSigned-off-by: Daniel Mihalyi \u003cdaniel.mihalyi@mattakis.com\u003e\n"
    },
    {
      "commit": "94ead7673f90a8199d926fe161d7d021202f0aa7",
      "tree": "120c8ea6fe55ba3a8e2f9cf6eba041ef98a9b51f",
      "parents": [
        "274395fe6649d83d723c4b912a46291b2987efd6",
        "f6737f7ed741b15cfd60c2530dab69f897540735"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Mar 24 11:58:59 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 24 11:59:00 2015 +0000"
      },
      "message": "Merge \"Quick: Clean up Mir2Lir codegen.\""
    },
    {
      "commit": "f6737f7ed741b15cfd60c2530dab69f897540735",
      "tree": "120c8ea6fe55ba3a8e2f9cf6eba041ef98a9b51f",
      "parents": [
        "274395fe6649d83d723c4b912a46291b2987efd6"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Mar 23 17:05:14 2015 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Mar 24 11:46:21 2015 +0000"
      },
      "message": "Quick: Clean up Mir2Lir codegen.\n\nClean up WrapPointer()/UnwrapPointer() and OpPcRelLoad().\n\nChange-Id: I1a91f01e1e779599c77f3f6efcac2a6ad34629cf\n"
    },
    {
      "commit": "274395fe6649d83d723c4b912a46291b2987efd6",
      "tree": "b363f83e2190e05f8c37ddb37c7d5f24ea9b3c8a",
      "parents": [
        "bce0855ca1dbb1fa226c5b6a81760272ce0b64ef",
        "767c752fddc64e280dba507457e4f06002b5f678"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Mar 24 11:26:17 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 24 11:26:17 2015 +0000"
      },
      "message": "Merge \"Quick: Create GC map based on compiler data.\""
    },
    {
      "commit": "bce0855ca1dbb1fa226c5b6a81760272ce0b64ef",
      "tree": "6439e1079e13fff84e98e8ef0a7feaf05ad9546a",
      "parents": [
        "27a40aac557a0ee123471a99dc56fe91b50f2351",
        "0ba627337274ccfb8c9cb9bf23fffb1e1b9d1430"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Mar 24 02:40:55 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 24 02:40:56 2015 +0000"
      },
      "message": "Merge \"Revert \"Deoptimization-based bce.\"\""
    },
    {
      "commit": "0ba627337274ccfb8c9cb9bf23fffb1e1b9d1430",
      "tree": "0e1d0813c1d8d1c7239a900c1653296975713df0",
      "parents": [
        "e295e6ec5beaea31be5d7d3c996cd8cfa2053129"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Mar 24 02:39:46 2015 +0000"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Mar 24 02:39:46 2015 +0000"
      },
      "message": "Revert \"Deoptimization-based bce.\"\n\nThis breaks compiling the core image:\n\n Error after BCE: art::SSAChecker: Instruction 219 in block 1 does not dominate use 221 in block 1.\n\nThis reverts commit e295e6ec5beaea31be5d7d3c996cd8cfa2053129.\n\nChange-Id: Ieeb48797d451836ed506ccb940872f1443942e4e\n"
    },
    {
      "commit": "27a40aac557a0ee123471a99dc56fe91b50f2351",
      "tree": "fb7fcf5673e3d672b68e7a96aceb3a50b191b467",
      "parents": [
        "075a6090b07ecfe7394fb65d39567596e0b1e3d3",
        "e295e6ec5beaea31be5d7d3c996cd8cfa2053129"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Mon Mar 23 23:56:36 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 23 23:56:37 2015 +0000"
      },
      "message": "Merge \"Deoptimization-based bce.\""
    },
    {
      "commit": "e295e6ec5beaea31be5d7d3c996cd8cfa2053129",
      "tree": "4d8a657d23d511743ce35bee596544d7f652efdb",
      "parents": [
        "d24ba2c44c76a2b2dd13aafe8f7981c15be31a98"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Sat Mar 07 06:37:59 2015 -0800"
      },
      "committer": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Mon Mar 23 16:39:37 2015 -0700"
      },
      "message": "Deoptimization-based bce.\n\nA mechanism is introduced that a runtime method can be called\nfrom code compiled with optimizing compiler to deoptimize into\ninterpreter. This can be used to establish invariants in the managed code\nIf the invariant does not hold at runtime, we will deoptimize and continue\nexecution in the interpreter. This allows to optimize the managed code as\nif the invariant was proven during compile time. However, the exception\nwill be thrown according to the semantics demanded by the spec.\n\nThe invariant and optimization included in this patch are based on the\nlength of an array. Given a set of array accesses with constant indices\n{c1, ..., cn}, we can optimize away all bounds checks iff all 0 \u003c\u003d min(ci) and\nmax(ci) \u003c array-length. The first can be proven statically. The second can be\nestablished with a deoptimization-based invariant. This replaces n bounds\nchecks with one invariant check (plus slow-path code).\n\nChange-Id: I8c6e34b56c85d25b91074832d13dba1db0a81569\n"
    },
    {
      "commit": "075a6090b07ecfe7394fb65d39567596e0b1e3d3",
      "tree": "6439e1079e13fff84e98e8ef0a7feaf05ad9546a",
      "parents": [
        "526e2ab195672ce68de8351e04807063054ef3da",
        "53056722fbbba44bb30e125b4a0be37e6bb878e7"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Mar 23 21:52:00 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 23 21:52:00 2015 +0000"
      },
      "message": "Merge \"RTLD_LAZY is not supported, use RTLD_NOW instead.\""
    },
    {
      "commit": "53056722fbbba44bb30e125b4a0be37e6bb878e7",
      "tree": "6439e1079e13fff84e98e8ef0a7feaf05ad9546a",
      "parents": [
        "526e2ab195672ce68de8351e04807063054ef3da"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Mar 23 13:38:20 2015 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Mar 23 13:38:20 2015 -0700"
      },
      "message": "RTLD_LAZY is not supported, use RTLD_NOW instead.\n\nChange-Id: I5f4da01778a0df90bf104d868a00f86445d93a2d\n"
    },
    {
      "commit": "526e2ab195672ce68de8351e04807063054ef3da",
      "tree": "cb9503e1ca6457468924cf4d50210f894af2b2c3",
      "parents": [
        "fc06816cc25f80cc6c4c5d002e5d3bced242a9ee",
        "bce416f7f22f1e73250f020be1178a1c7db72330"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Mar 23 20:10:23 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 23 20:10:24 2015 +0000"
      },
      "message": "Merge \"Add code cache test\""
    },
    {
      "commit": "bce416f7f22f1e73250f020be1178a1c7db72330",
      "tree": "cb9503e1ca6457468924cf4d50210f894af2b2c3",
      "parents": [
        "fc06816cc25f80cc6c4c5d002e5d3bced242a9ee"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Mar 23 12:37:35 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Mar 23 13:00:14 2015 -0700"
      },
      "message": "Add code cache test\n\nBug: 17950037\nChange-Id: I13913667517db5bb9b7224f0639c2b39cf3a1973\n"
    },
    {
      "commit": "fc06816cc25f80cc6c4c5d002e5d3bced242a9ee",
      "tree": "05c1a88f5e26fc72a14d70b27dc5413155f1f3f7",
      "parents": [
        "d24ba2c44c76a2b2dd13aafe8f7981c15be31a98",
        "785049f8083e56e88dfeab5ff74fb3817f9854e3"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Mar 23 19:45:32 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 23 19:45:32 2015 +0000"
      },
      "message": "Merge \"Add paths to apk!lib/\u003cabi\u003e to LD_LIBRARY_PATH\""
    },
    {
      "commit": "785049f8083e56e88dfeab5ff74fb3817f9854e3",
      "tree": "ab06a7fb4acb2ed73eed4b58327ba485f61560c4",
      "parents": [
        "f5988cf0c47ff935bb19c89ed0398be5fbe44bb6"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Jul 18 10:08:57 2014 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Mar 23 11:38:54 2015 -0700"
      },
      "message": "Add paths to apk!lib/\u003cabi\u003e to LD_LIBRARY_PATH\n\n  Add paths to .apk to LD_LIBRARY_PATH to enable\n  bionic linker\u0027s \"open from zip-file\" feature.\n\nBug: 8076853\nChange-Id: I1aa2c039bb2a590ae72f256acc9ba5401c2c59b1\n"
    },
    {
      "commit": "d24ba2c44c76a2b2dd13aafe8f7981c15be31a98",
      "tree": "0e1d0813c1d8d1c7239a900c1653296975713df0",
      "parents": [
        "90d480c26f7524f35323a11d6ba2880ff3db789a",
        "7e4c3508e4f5512650b63c41f7872a749e99aee9"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 23 17:52:58 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 23 17:52:59 2015 +0000"
      },
      "message": "Merge \"Inline across dex files.\""
    },
    {
      "commit": "7e4c3508e4f5512650b63c41f7872a749e99aee9",
      "tree": "b6f9f89eb384a386ee756e6dd98d9f979feef2ce",
      "parents": [
        "0b1692cd451053198362993d1f6939fde90c2f50"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Mar 18 11:00:52 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 23 17:42:01 2015 +0000"
      },
      "message": "Inline across dex files.\n\nChange-Id: I5c2c44f5130b50f0bad21a6877a3935dc60b4a85\n"
    },
    {
      "commit": "90d480c26f7524f35323a11d6ba2880ff3db789a",
      "tree": "d52251e5720bbce2c5bc066e6da90b0345f8d53d",
      "parents": [
        "c6de977f6482014a9d01a880efe3eed8bd2007e6",
        "36540cb4d549c706cc7cd23086684f1548a91042"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 23 17:05:48 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 23 17:05:48 2015 +0000"
      },
      "message": "Merge \"Implement a space filter for optimizing.\""
    },
    {
      "commit": "c6de977f6482014a9d01a880efe3eed8bd2007e6",
      "tree": "73072a4a4151c31f6e4a8e0896d2ba378b3cd131",
      "parents": [
        "5af26bd446660bc5d13dd6ff9470e6920a51e26e",
        "b4e180844b956d4d5e22f1a17178fa8091dfea68"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Mar 23 16:54:17 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 23 16:54:17 2015 +0000"
      },
      "message": "Merge \"Fix a bug in AddToCodeCache\""
    },
    {
      "commit": "b4e180844b956d4d5e22f1a17178fa8091dfea68",
      "tree": "d8a828588c1195978a1ef5584694fe0a6a15cabe",
      "parents": [
        "476448128d0ebf3328e96548de34f19bc55fa5c8"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Sun Mar 22 13:52:48 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Mar 23 09:45:10 2015 -0700"
      },
      "message": "Fix a bug in AddToCodeCache\n\nWas comparing wrong variable to null.\n\nBug: 17950037\nChange-Id: I32eb209d378c4818c977c4d1cf63603f7269bd9b\n"
    },
    {
      "commit": "5af26bd446660bc5d13dd6ff9470e6920a51e26e",
      "tree": "a7a8ffcef09783b7ca91c70aa90e48efaf650b38",
      "parents": [
        "af2bec33e5f124e37e9dbbe0fef1261411bd372d",
        "2d35d9d7490ef3880ee366ccbf8f6e791f398c47"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 23 16:44:35 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 23 16:44:36 2015 +0000"
      },
      "message": "Merge \"Opt Compiler: Materialise constants that cannot be encoded\""
    },
    {
      "commit": "af2bec33e5f124e37e9dbbe0fef1261411bd372d",
      "tree": "4b49689ff6d7483440fa250c68ea65b8f68e26dd",
      "parents": [
        "461bd6cbcd26731aad019d382aafbdbc7ee19e69",
        "3f6c7f61855172d3d9b7a9221baba76136088e7c"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 23 15:23:23 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 23 15:23:24 2015 +0000"
      },
      "message": "Merge \"[optimizing] Improve x86, x86_64 code\""
    },
    {
      "commit": "461bd6cbcd26731aad019d382aafbdbc7ee19e69",
      "tree": "97a0f1fdd5d90a9232b087d957d908c7d3348752",
      "parents": [
        "b8fb4f499d5a78db597142c9986a2550345bd2b9",
        "e934df2f3276d1e07c5c95a0fe47fc84b4c9438e"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Mon Mar 23 15:21:20 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 23 15:21:21 2015 +0000"
      },
      "message": "Merge \"Improve dex2oat --dex-file and --dex-location usage info.\""
    },
    {
      "commit": "36540cb4d549c706cc7cd23086684f1548a91042",
      "tree": "2c96f65e657ea190e20bd311dab4ba0a35f4040e",
      "parents": [
        "476448128d0ebf3328e96548de34f19bc55fa5c8"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 23 14:45:53 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 23 14:47:12 2015 +0000"
      },
      "message": "Implement a space filter for optimizing.\n\nHeuristic-based. Currently only for enabling fugu user build.\n\nChange-Id: I76e652bd3f00ed84a2a8ad69c7c2c0e24d74cd68\n"
    },
    {
      "commit": "b8fb4f499d5a78db597142c9986a2550345bd2b9",
      "tree": "855aac644fbde7ecb264666c6691f66333fff93b",
      "parents": [
        "476448128d0ebf3328e96548de34f19bc55fa5c8",
        "0e071250e1291656f2211c5869c649fb459d5c9b"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 23 14:08:21 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 23 14:08:22 2015 +0000"
      },
      "message": "Merge \"Update script now that optimizing is default.\""
    },
    {
      "commit": "0e071250e1291656f2211c5869c649fb459d5c9b",
      "tree": "db1e937da823e07810ee456e0397c49a529f5d57",
      "parents": [
        "0b1692cd451053198362993d1f6939fde90c2f50"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sat Mar 21 13:43:15 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 23 14:06:29 2015 +0000"
      },
      "message": "Update script now that optimizing is default.\n\nbug:19872972\n\nChange-Id: I648078483af5a0db3a13b0f94c36d083cbc4d2df\n"
    },
    {
      "commit": "476448128d0ebf3328e96548de34f19bc55fa5c8",
      "tree": "d539cf7b3b3261512474fd0cd623b3d6fc93ebbf",
      "parents": [
        "0b1692cd451053198362993d1f6939fde90c2f50",
        "1445dd3b3f47fcbdb722f74bcf5189249310a0b4"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Sun Mar 22 20:22:24 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sun Mar 22 20:22:25 2015 +0000"
      },
      "message": "Merge \"Change \"no-\",\"no\" test prefix to n\""
    },
    {
      "commit": "0b1692cd451053198362993d1f6939fde90c2f50",
      "tree": "47d03a97a9b5101ea543beda55f29cce339bd06e",
      "parents": [
        "ea379885b01d6985cff09d0efd438d03de5f9fa1",
        "935e01a1e4c0f0ac257c5a9b71bda50a9d441fa3"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Sat Mar 21 02:45:59 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Mar 21 02:45:59 2015 +0000"
      },
      "message": "Merge \"Fix interpreter to allow 0 size sparse switches.\""
    },
    {
      "commit": "935e01a1e4c0f0ac257c5a9b71bda50a9d441fa3",
      "tree": "9b79b902c9ca4443561aba439122fd0be65900a6",
      "parents": [
        "7aa81a451386350dd03c98adfade2ed7b88f611e"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Fri Mar 20 19:44:35 2015 -0700"
      },
      "committer": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Fri Mar 20 19:44:35 2015 -0700"
      },
      "message": "Fix interpreter to allow 0 size sparse switches.\n\nBug: 19827056\nChange-Id: I12eaf717f1a4b9bd5e0c8e2a508df9da4e61c4ec\n"
    },
    {
      "commit": "ea379885b01d6985cff09d0efd438d03de5f9fa1",
      "tree": "3ebe1b7d0d18cc339c7ec373ac4e35695d50093a",
      "parents": [
        "7aa81a451386350dd03c98adfade2ed7b88f611e",
        "027f0ff64c2512b9a5f1f54f3fea1bec481eb0f5"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Sat Mar 21 02:20:49 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Mar 21 02:20:50 2015 +0000"
      },
      "message": "Merge \"ART: Add Mips32r6 backend support\""
    },
    {
      "commit": "7aa81a451386350dd03c98adfade2ed7b88f611e",
      "tree": "83bab1196e677b6b24f96866ab407cdeff69b6c8",
      "parents": [
        "bd891ccdef8d9677f64e26912c0161de31bb42bd",
        "9ccd151d0d27a729f88af9d00285afe4d147981a"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Sat Mar 21 01:47:16 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Mar 21 01:47:17 2015 +0000"
      },
      "message": "Merge \"Fix verifier handling of empty switch as last instruction.\""
    },
    {
      "commit": "9ccd151d0d27a729f88af9d00285afe4d147981a",
      "tree": "edfef268a0ecda957dfaa91ec35dd99c9ad3761f",
      "parents": [
        "3743174267159ec0c39bce1ca28c2081468dda94"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Fri Mar 20 18:11:45 2015 -0700"
      },
      "committer": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Fri Mar 20 18:40:32 2015 -0700"
      },
      "message": "Fix verifier handling of empty switch as last instruction.\n\nAlso fixes optimizing compiler\u0027s assumption that switch is non-empty and\nadds test case.\n\nBug: 19827056\nChange-Id: I5ac891d5062f528ef3be787b1094cba7b4c0fbd0\n"
    },
    {
      "commit": "bd891ccdef8d9677f64e26912c0161de31bb42bd",
      "tree": "1e548e63b2987f7831416594b974bece210ba64f",
      "parents": [
        "248701ef353ec05dd78b0a1afe6be29612366b55",
        "cd8f6377821370cb471fb21ae095dfaa204e4410"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Sat Mar 21 01:11:12 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Mar 21 01:11:12 2015 +0000"
      },
      "message": "Merge \"Remove some spammy logging\""
    },
    {
      "commit": "cd8f6377821370cb471fb21ae095dfaa204e4410",
      "tree": "e3d4763b0a253fbfeab368acf714826934aaeb1d",
      "parents": [
        "8c66b5fd8015116cede7a67ebdd1229ff7315f49"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Mar 20 18:04:02 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Mar 20 18:08:28 2015 -0700"
      },
      "message": "Remove some spammy logging\n\nDid not provide useful info and or was redundant.\n\nChange-Id: I42da705debc43460cdd3fdf16e9e9ceb2c137001\n"
    },
    {
      "commit": "248701ef353ec05dd78b0a1afe6be29612366b55",
      "tree": "0e1f08a15e5ebfbc92896f979bded31f9b5f3fd1",
      "parents": [
        "8c66b5fd8015116cede7a67ebdd1229ff7315f49",
        "3d900a7400701be1fb6a1e7fa192bab8aeec5467"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Sat Mar 21 01:03:19 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Mar 21 01:03:19 2015 +0000"
      },
      "message": "Merge \"Fix the mac build.\""
    },
    {
      "commit": "3d900a7400701be1fb6a1e7fa192bab8aeec5467",
      "tree": "0e1f08a15e5ebfbc92896f979bded31f9b5f3fd1",
      "parents": [
        "8c66b5fd8015116cede7a67ebdd1229ff7315f49"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Fri Mar 20 17:56:45 2015 -0700"
      },
      "committer": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Fri Mar 20 17:56:45 2015 -0700"
      },
      "message": "Fix the mac build.\n\nUse SYMBOL around a function name in the assembly code.\n\nChange-Id: I624361ff15a00288c834bd90d1b7783138802ea7\n"
    },
    {
      "commit": "8c66b5fd8015116cede7a67ebdd1229ff7315f49",
      "tree": "9ec51241cf7ccd9eb1acd8cfe1cc574a073e02cd",
      "parents": [
        "6cc763c8b8157fb42dd44e1dfb84812546500dc1",
        "6ced4092bc425c6aa402d47be5e6c9e6ad2291ec"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Sat Mar 21 00:11:37 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Mar 21 00:11:37 2015 +0000"
      },
      "message": "Merge \"Enable more direct code for JIT\""
    },
    {
      "commit": "027f0ff64c2512b9a5f1f54f3fea1bec481eb0f5",
      "tree": "9202535f219d7343b4c26d5c43f0bcb7c31650df",
      "parents": [
        "6cc763c8b8157fb42dd44e1dfb84812546500dc1"
      ],
      "author": {
        "name": "Douglas Leung",
        "email": "douglas.leung@imgtec.com",
        "time": "Fri Feb 27 19:05:03 2015 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Mar 20 16:51:56 2015 -0700"
      },
      "message": "ART: Add Mips32r6 backend support\n\nAdd Mips32r6 compiler support.\n\nDon\u0027t use deprecated Mips32r2 instructions if running in Mips32r6\nmode.\n\nChange-Id: I54e689aa8c026ccb75c4af515aa2794f471c9f67\n"
    },
    {
      "commit": "6ced4092bc425c6aa402d47be5e6c9e6ad2291ec",
      "tree": "9ec51241cf7ccd9eb1acd8cfe1cc574a073e02cd",
      "parents": [
        "6cc763c8b8157fb42dd44e1dfb84812546500dc1"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Feb 27 16:10:48 2015 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Mar 20 16:22:48 2015 -0700"
      },
      "message": "Enable more direct code for JIT\n\nHard to measure the performance impact, but it should be faster.\n\nBug: 17950037\n\nChange-Id: Ib8d216bb3b305dc390b5df7ee92427fd6bd8aab3\n"
    }
  ],
  "next": "767c752fddc64e280dba507457e4f06002b5f678"
}
