)]}'
{
  "log": [
    {
      "commit": "3b0667c1d68ba88c71b031757b757dca659afd69",
      "tree": "5125dd5693ce9e4acc5913c6b8c81d119c08df19",
      "parents": [
        "b508ccd83e76de16e9d19e8cb010b41a1651556a",
        "2738639bcd30b908d825725169b7497ed047debb"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 29 21:01:14 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 29 21:01:14 2015 +0000"
      },
      "message": "Merge \"ART: Fix CFI annotation for art_quick_aput_obj\""
    },
    {
      "commit": "b508ccd83e76de16e9d19e8cb010b41a1651556a",
      "tree": "a5619d9a21ab2faaeaada2c7a576bd388df55768",
      "parents": [
        "806af26f1a8f107cb4f4430ceec8dc9f360f3795",
        "64db62dcb744c053bd32715a5f654fb352ada449"
      ],
      "author": {
        "name": "Yusuke Sato",
        "email": "yusukes@google.com",
        "time": "Mon Jun 29 17:49:28 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 29 17:49:37 2015 +0000"
      },
      "message": "Merge \"Rename ZipEntryName to ZipString\""
    },
    {
      "commit": "2738639bcd30b908d825725169b7497ed047debb",
      "tree": "20cd28868d55c8dde5e2c5321428ca68fb67b077",
      "parents": [
        "806af26f1a8f107cb4f4430ceec8dc9f360f3795"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Sat Jun 27 15:42:27 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 29 10:38:45 2015 -0700"
      },
      "message": "ART: Fix CFI annotation for art_quick_aput_obj\n\nFix the CFI state after an early return.\n\nBug: 22014525\nChange-Id: I56b9ba8cf8c47d70a642f064e59c7e04a476dd2f\n"
    },
    {
      "commit": "9a83f59365443eead29a318fe28916df9412a720",
      "tree": "438781e2029810aaff04d93a71695bf331b137be",
      "parents": [
        "8db4a7c8f1327655d09a7737ad3a8c4e5ec37d84",
        "110415dbd6b3656d2533dac2f165c81751fed1cc"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Sat Jun 27 03:08:44 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jun 27 03:08:45 2015 +0000"
      },
      "message": "Merge \"Fixed a nullptr bug in SweepAllocationRecords()\""
    },
    {
      "commit": "110415dbd6b3656d2533dac2f165c81751fed1cc",
      "tree": "6f2c3d73cdd46aaca8da68bb9d021acb71cc0ba5",
      "parents": [
        "921c7a62ba9dd6a4a855b08eca7cc1aae081adeb"
      ],
      "author": {
        "name": "Man Cao",
        "email": "manc@google.com",
        "time": "Fri Jun 26 19:54:41 2015 -0700"
      },
      "committer": {
        "name": "Man Cao",
        "email": "manc@google.com",
        "time": "Fri Jun 26 19:54:41 2015 -0700"
      },
      "message": "Fixed a nullptr bug in SweepAllocationRecords()\n\nnullptr shouldn\u0027t be passed to IsMarkedCallBack functions.\n\nChange-Id: Idfa3c0096b5ed0914fd0dd034ebc2176861f84eb\n"
    },
    {
      "commit": "6b90d42316e0370c789dddb5dda48d7403ea378f",
      "tree": "69af01ba975dd1c149e676fef1c94da99577c246",
      "parents": [
        "921c7a62ba9dd6a4a855b08eca7cc1aae081adeb"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jun 26 19:49:24 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jun 26 19:51:35 2015 -0700"
      },
      "message": "ART: Fix CFI annotation in arm64, x86 and x86-64 assembly\n\nTo be able to unroll in the exception case, the state needs to be\nreset to before the jump.\n\nBug: 22014525\nChange-Id: Ic60400b5bf0efcb713c24df1728623d072f344ab\n"
    },
    {
      "commit": "d5ad72fb8ca28ee4fa4109fa7154e08d0c4ac4d3",
      "tree": "b3fad532f90e6e76a442f06ad3e391011932ebdc",
      "parents": [
        "2d0ad78f50cae58d1ca11a497614ca3e1178acc3"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jun 26 17:33:47 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jun 26 17:53:41 2015 -0700"
      },
      "message": "ART: Fix invalid access and DCHECK in verifier\n\nIf we get a throwing failure when setting types from the signature,\nthe work instruction index is still invalid. Do not try to copy the\nline then.\n\nAs a throwing failure might happen in the above instance, but the\nflow analysis expects to have a cleared failure flag before processing\neach instruction, clear the flag.\n\nBug: 21645819\nBug: 22080519\n\n(cherry picked from commit 3ae8da0a803370be9dd410226438f636af553e22)\n\nChange-Id: I224c4dad98fa5bb50e62210f0ee30c0dd020e3a6\n"
    },
    {
      "commit": "7526d783ab68ed1dd53c763c75895cb432532b0f",
      "tree": "823d90f5eb72010c4ff68d67cc905ac3f44f629a",
      "parents": [
        "83f0a080b68e9cff9333af030f20f242a7ac9168"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 22 22:53:45 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jun 26 14:22:46 2015 -0700"
      },
      "message": "ART: Fix streaming tracing issues\n\nFix a lock ordering issue in streaming-mode tracing.\n\nFix a moving-GC issue in streaming-mode tracing. DexCache\nobjects are not good keys for a map.\n\nExpose streaming mode for testing in run-tests.\n\nBug: 21760614\n\n(cherry picked from commit b91205e40fe692061edde19ecb87d51414a7fcee)\n\nChange-Id: Idcd0575684ee3cc0cec3f81b4fdd0d5988c11e8c\n"
    },
    {
      "commit": "dd06afecd67fc6a60856436ab150a4d1b9a8ad29",
      "tree": "abf555db93941102f9be1454525df66936da1559",
      "parents": [
        "8d1a8c00b89775a251ac5e26a557f81ac1491a44"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Jun 26 10:47:08 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Jun 26 12:46:15 2015 -0700"
      },
      "message": "Require mutator lock for DeleteLocalRef\n\nThere was a race condition where suspended threads could call\nDeleteLocalRef while the GC was marking their roots. This could\ncause the GC to attempt to mark a null object.\n\nBug: 22119403\n\nChange-Id: I962c717bb87b2acb2a4710a2d7ab16793e031401\n"
    },
    {
      "commit": "23682bf61e91a4c34373d55b085ab7cbade3ed1b",
      "tree": "c3291a501b1419a030c0619db9c7d0439805a3b6",
      "parents": [
        "4a08e17a9db0f68b9623849bc288c31a47868fbc"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Jun 24 14:28:03 2015 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Jun 26 15:26:30 2015 +0100"
      },
      "message": "ART: Ignore repeated field indexes when loading a class.\n\nThis provides a deterministic behavior for classes with\nduplicate field indexes in class_data_item and avoids\nfailures when verifying the field ordering in debug build.\n\nRegression test not feasible without hand-edited dex file.\n(Smali deduplicates field definitions.)\n\nBug: 21868015\nChange-Id: I4f97ba005e063686f8f44248ed7f1286d987888a\n"
    },
    {
      "commit": "6056c8fb5d397e0cb97221dc70def239597c252e",
      "tree": "1184e8992aae81e37e122a8681998aa5b84b6425",
      "parents": [
        "d7f3c38f1b1d23c08b91abb474e08da3105689f8",
        "a06b49b6eb3980b4f0e6f5b1222ef2aebe5029f0"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu Jun 25 23:07:42 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 25 23:07:43 2015 +0000"
      },
      "message": "Merge \"interpreter: Fix string init for soft-failed invokes\""
    },
    {
      "commit": "a06b49b6eb3980b4f0e6f5b1222ef2aebe5029f0",
      "tree": "f28d120fdca12b9539a7caf3ceb0ec3ee9529eae",
      "parents": [
        "3552d96086c75523a76f399a13dd85d65eaa2d19"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu Jun 25 15:18:12 2015 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu Jun 25 15:18:12 2015 -0700"
      },
      "message": "interpreter: Fix string init for soft-failed invokes\n\nBug: 22040916\nChange-Id: Id5b6f0f29e763c31bab4d85877cd8aaf02334e48\n"
    },
    {
      "commit": "d7f3c38f1b1d23c08b91abb474e08da3105689f8",
      "tree": "f01ad355cf39649ead8544325fb2c34e64ffe43e",
      "parents": [
        "dfda6d74f97891d1b61027de9b4dca9bcd7c197d",
        "42c3c33df8b6eefc4ba532f1981282510f109928"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jun 25 22:02:33 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 25 22:02:33 2015 +0000"
      },
      "message": "Merge \"Make allocation tracker use less memory\""
    },
    {
      "commit": "64db62dcb744c053bd32715a5f654fb352ada449",
      "tree": "9d6dccc2e43aeb2ce07ff3a9da44e437d8f0f328",
      "parents": [
        "f3274f8514636e7f52171a2e6b018017b34784e5"
      ],
      "author": {
        "name": "Yusuke Sato",
        "email": "yusukes@google.com",
        "time": "Thu Jun 25 14:56:49 2015 -0700"
      },
      "committer": {
        "name": "Yusuke Sato",
        "email": "yusukes@google.com",
        "time": "Thu Jun 25 14:56:49 2015 -0700"
      },
      "message": "Rename ZipEntryName to ZipString\n\nThis is for https://android-review.googlesource.com/#/c/156771/.\n\nBug: 21957428\nChange-Id: Ibfbaf556a16e314654402f73405f0f92b0d8d106\n"
    },
    {
      "commit": "42c3c33df8b6eefc4ba532f1981282510f109928",
      "tree": "4526fe0a718f2e8ead36907aa9984c402d5a1888",
      "parents": [
        "bb3dabaf804e0d0bd2bf34e69091b2f86fd4e78b"
      ],
      "author": {
        "name": "Man Cao",
        "email": "manc@google.com",
        "time": "Tue Jun 23 16:38:25 2015 -0700"
      },
      "committer": {
        "name": "Man Cao",
        "email": "manc@google.com",
        "time": "Thu Jun 25 14:10:48 2015 -0700"
      },
      "message": "Make allocation tracker use less memory\n\nThe allocation tracker no longer keeps recently allocated objects live.\nInstead it just keeps their class objects live as strong roots. This fixed\nthe gc-stress test failure for 098-ddmc.\n\nAlso fixed the issue in DisableNewSystemWeak() for allocation tracker,\nby making new allocation to wait until GC\u0027s sweeping to complete. I didn\u0027t\nfeel any significant slowdown with this wait.\n\nBug: 20037135\nChange-Id: I6a98188832cf7ee478007e3788e742dc6e18f7b8\n"
    },
    {
      "commit": "dfda6d74f97891d1b61027de9b4dca9bcd7c197d",
      "tree": "62754199e9b070754d7bea0994e57cd0b8f0a496",
      "parents": [
        "f3274f8514636e7f52171a2e6b018017b34784e5",
        "4cc6073c0c225ce6e886d4d29757408b09249d8f"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Jun 25 20:51:42 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 25 20:51:43 2015 +0000"
      },
      "message": "Merge \"Fixed bug in debugging information in dex file\""
    },
    {
      "commit": "d12e782bcee03ecb6dec41aa9673ef53b638dcea",
      "tree": "fdf9ff18d66bf7a5509b4d98dc4d19f7163ab830",
      "parents": [
        "292edf0dacca4b0220522c9b4465638da18dadf4"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Jun 25 10:26:40 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Jun 25 12:33:31 2015 -0700"
      },
      "message": "ART: Reset runtime_throw_failure flag\n\nThe flag is instruction-specific. It transports the info from Fail\nto the main loop. It must be cleared after each iteration.\n\nIntroduce a second flag to store whether we saw such a failure at\nall.\n\nUpdate test expectations.\n\nBug: 22080519\nChange-Id: I32be914819946233babaa4cb7343844d97b61ba5\n"
    },
    {
      "commit": "4cc6073c0c225ce6e886d4d29757408b09249d8f",
      "tree": "e6eb38f3d6dd11514e39a51810ac3701f24b8274",
      "parents": [
        "1f1d53ebfc7f955c28f8d5659b7811ad6cef8f19"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Wed Jun 24 16:33:32 2015 -0700"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu Jun 25 10:33:42 2015 -0700"
      },
      "message": "Fixed bug in debugging information in dex file\n\nRationale:\nNot resetting signature field may cause \"leaking\" old extended\nvalue into new non-extended value (exposed while implementing\nan Art-based dexdump; it affects all debug iterators though)\n\nBug: 17442393\nChange-Id: I4d1e2357ab7e0d77dbcf09786f24ac5cc54160b9\n"
    },
    {
      "commit": "9b994ea841eaaefbdda652251894a74db9cefcc8",
      "tree": "1301a50074df3fa4de66d2fd0580aa67237fa90f",
      "parents": [
        "7467fa30adceb7287e70075b7c8de0cdade60c4c"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Wed Jun 24 08:44:19 2015 -0700"
      },
      "committer": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Thu Jun 25 08:33:59 2015 -0700"
      },
      "message": "Do not try to compile resource-only dex files.\n\nThis changes behavior in the case where we are asked to load a dex\nfile that does not exist or has no classes.dex entry.\n\nPreviously we would run dex2oat, which would log an error message and\nfail. Now we skip running dex2oat, we report the DexOptStatus as\nkNoDexOptNeeded, and we do not try to fall back to the missing\noriginal dex files.\n\nBug: 21722039\n(cherry picked from commit cb44b11a926696e34b3dc44288e762b4303cc128)\n\nChange-Id: I84a85dc9ece54bcc0a5283f871e09bf68471c6e7\n"
    },
    {
      "commit": "414000ec4d728b5c85f8c6dee4f867fecde59b01",
      "tree": "d4260308a2e6c5b2c14d64bd3c72b6df7061e614",
      "parents": [
        "bcc9d2b5f07afb6d7e83d71179c3069825a69d7c"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Jun 23 17:45:21 2015 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Jun 25 10:46:07 2015 +0100"
      },
      "message": "Hard-fail get-/put-object to a non-reference field.\n\nBug: 21886894\nChange-Id: Iec870c223ce97fd90dcce05ae80c002e2b24cb5d\n"
    },
    {
      "commit": "c89b047ed85cfabbdc79a7b76be413fb366b501a",
      "tree": "019daaf23a7bba92eb05598a64a7185024bdd515",
      "parents": [
        "eab80576240892148d14321c56c8869358e131ab"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jun 23 23:28:59 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 24 21:12:57 2015 -0700"
      },
      "message": "ART: Fix arm32 instrumentation exit stub\n\nProperly store, pass and restore floating point result.\n\nBug: 22047833\n\n(cherry picked from commit 844fb67a8b5638c4e195dbbe510dc1626824a16c)\n\nChange-Id: If5d9efbe63334c9b6353f76ce6e4fe519602482a\n"
    },
    {
      "commit": "eab80576240892148d14321c56c8869358e131ab",
      "tree": "377e7403a437918261cd10c18cb910551b910869",
      "parents": [
        "1f1d53ebfc7f955c28f8d5659b7811ad6cef8f19",
        "b735bd9c04aa291d0a1bdc2c0a094a1a75ad0596"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jun 25 03:00:33 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 25 03:00:33 2015 +0000"
      },
      "message": "Merge \"Fix force copy\""
    },
    {
      "commit": "b735bd9c04aa291d0a1bdc2c0a094a1a75ad0596",
      "tree": "42ee174768b19c498685877f5d09dceb8fdf6e92",
      "parents": [
        "2f233b481d8423bf09e295fea9608b68f09a1862"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jun 24 17:04:17 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jun 24 17:25:50 2015 -0700"
      },
      "message": "Fix force copy\n\nWe now correctly pass the returned pointer back onto the release functions.\n\nBug: 22056708\nChange-Id: I1a7300d3a4522a3c81b432ec742ae1c0bd00b51e\n"
    },
    {
      "commit": "1f1d53ebfc7f955c28f8d5659b7811ad6cef8f19",
      "tree": "388d243d441c2fab1aed725e52f591d1ffd5c095",
      "parents": [
        "2f233b481d8423bf09e295fea9608b68f09a1862",
        "a32210c53d23b73ba769053b8c1b214a7468fe6e"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 24 21:31:01 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 24 21:31:01 2015 +0000"
      },
      "message": "Merge \"ART: Correctly hard-fail method with undefined register\""
    },
    {
      "commit": "a32210c53d23b73ba769053b8c1b214a7468fe6e",
      "tree": "bf85ea55e38add66912d95771eaf8dd36e8741eb",
      "parents": [
        "0c955b174bf64707ee0ee03195ed56f9cec26fa2"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 24 10:26:13 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 24 14:20:48 2015 -0700"
      },
      "message": "ART: Correctly hard-fail method with undefined register\n\nIn case a return-object gets an undefined return value register\nand an unresolved return type, the \"undefined\" must take precedence\nand lead to a hard fail of the method.\n\nBug: 22045582\nChange-Id: Id5595a72331cd6272aa9ebc8ff3b9cea046294a2\n"
    },
    {
      "commit": "f46e9d76c1fb99f0bb3a9a68f5b421d29ab25f7a",
      "tree": "1414c3a6ec56163e464c268382408003c20246e7",
      "parents": [
        "fdc9af0ed76aa1a6efa05b122c9bcfdbb7e1e991",
        "e34c71ce21dbc9fac3427df887e90e1311b6fa8e"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Jun 24 17:04:28 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 24 17:04:29 2015 +0000"
      },
      "message": "Merge \"Increase alt signal stack to 32K on host.\""
    },
    {
      "commit": "e34c71ce21dbc9fac3427df887e90e1311b6fa8e",
      "tree": "567e525f1b38049e39a93a734d136cd34f0ac2bd",
      "parents": [
        "f16474d08ed51a3ccfaa70360aefdf12ebc79da1"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Jun 24 09:37:39 2015 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Jun 24 09:42:27 2015 -0700"
      },
      "message": "Increase alt signal stack to 32K on host.\n\nOn host, when there is a crash, the code tries to do an unwind\nfrom the signal handler. Under some conditions this can require\na stack larger than 16K, so increase this value to 32K.\n\nThe symptom of this is that you get an empty backtrace running\nart tests when there is a crash.\n\nBug: 21949571\nChange-Id: I8306da55e35212a0f349e43a7f2ad546e8da8c76\n"
    },
    {
      "commit": "4824c27988c8eeb302791624bb3ce1d557b0db6c",
      "tree": "c14f74d9cc4c93cab04bee5c723e420a87db9cb3",
      "parents": [
        "22c4edd865bfdea29e80a789cef70e8e51d2a3a5"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jun 24 15:53:03 2015 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jun 24 17:01:08 2015 +0100"
      },
      "message": "Use a flag from the verifier to know if we should compile.\n\nOnly used for the lack of bottom type in the aget-object case\nfor now. Could be used for more.\n\nbug:21865466\n\nChange-Id: I64c2c84dfa1c0d259631e65e5f44b94e4139e6a7\n"
    },
    {
      "commit": "a12f729e7165780e73857e6248af0df00ad6ce2b",
      "tree": "7f3874eafcb7852a74b2c26ac38b6d191b7faf36",
      "parents": [
        "582195dfcee32586b71b0ed00a973cfc7d7b8b57",
        "9638b64f167d2447d118664c1e1276501e4a1ecc"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jun 24 09:03:56 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 24 09:03:58 2015 +0000"
      },
      "message": "Merge \"Remove bogus DCHECK.\""
    },
    {
      "commit": "9638b64f167d2447d118664c1e1276501e4a1ecc",
      "tree": "2e6e562d6632b36cc279985900983ca420629ebc",
      "parents": [
        "d4a02cfc59a449d216faa687cfdaa4252b4a433f"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Jun 23 18:16:46 2015 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jun 24 10:02:22 2015 +0100"
      },
      "message": "Remove bogus DCHECK.\n\nSpotted by running libcore tests with libartd.so. The FindClass\ncall will throw the exception if the element type is void.\n\nChange-Id: Ic5df7eb6c9934b8e70f7bfdcfe533e5c1ad5c518\n"
    },
    {
      "commit": "442cfa4cf08d4da6b95c48529bc79873fe6ff332",
      "tree": "7f2c89a0e35c8ffcfd8d0ef0a86906da4d74477c",
      "parents": [
        "6f327bfb6c9c45578794ff8ae3790189968af751",
        "07d7eab545916ef0602afddae162f5b6b1a68b7d"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Jun 23 23:10:45 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 23 23:10:46 2015 +0000"
      },
      "message": "Merge \"Fix field ordering for String in hprof\""
    },
    {
      "commit": "6f327bfb6c9c45578794ff8ae3790189968af751",
      "tree": "9fb904367407e16a4ec03d90a08d8f4e38c5d1c0",
      "parents": [
        "b1452c2fb01bfb663dbac94010c73b97e0c094e8",
        "f23f33de8b3e9abd16720e0f48d43d63d41dee16"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jun 23 23:03:07 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 23 23:03:08 2015 +0000"
      },
      "message": "Merge \"ART: Follow-up to 507cc6f83bf6379728f2dd20391f2ed5fbfe6371\""
    },
    {
      "commit": "f23f33de8b3e9abd16720e0f48d43d63d41dee16",
      "tree": "837e9d42fba572427596a6be4dbbb0745bdb47a3",
      "parents": [
        "ec3a4e7cdc4f268b40d923227c125429f4ee4884"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jun 23 14:18:17 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jun 23 16:02:16 2015 -0700"
      },
      "message": "ART: Follow-up to 507cc6f83bf6379728f2dd20391f2ed5fbfe6371\n\nDo not trigger DCHECK aborts for final and abstract classes when\nthey are used from other classes. Instead issue a soft error that\nleads to a runtime failure.\n\nBug: 21873151\nChange-Id: Ie5251a176722811b3c74585222874313a53f7e02\n"
    },
    {
      "commit": "07d7eab545916ef0602afddae162f5b6b1a68b7d",
      "tree": "cc8db5933a30c5b3a7b08f420874e40cbd26b060",
      "parents": [
        "b1452c2fb01bfb663dbac94010c73b97e0c094e8"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Jun 23 15:45:15 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Jun 23 15:55:50 2015 -0700"
      },
      "message": "Fix field ordering for String in hprof\n\nWe were inserting value field after the Object field instead of\nthe String fields.\n\n(cherry picked from commit c94c6a751ef1ee31cbc3b924835290bcdef731a0)\n\nBug: 22043800\nChange-Id: Ibaddbd7299562949e32eceb625feac325539e3ce\n"
    },
    {
      "commit": "ec96923620cb6f8a8f8205d89ea30f147e76e7fa",
      "tree": "ebe93bed818cf44c3dc9db20b710301605dcc8ee",
      "parents": [
        "bb3dabaf804e0d0bd2bf34e69091b2f86fd4e78b"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Mon Jun 22 20:20:30 2015 -0700"
      },
      "committer": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Tue Jun 23 15:06:29 2015 -0700"
      },
      "message": "Make dex file verifier check that indexes are increasing.\n\nNote that this still allows duplicates.\n\nBug: 21868011\n\n(cherry-picked from commit dd32833e24241508aa697d5349edf6aba9922434)\n\nChange-Id: Ifcb2cda465d9451c16b122185a260ca8cebc41c5\n"
    },
    {
      "commit": "107b61bbccc5b6554084877853699e2f5ea86db3",
      "tree": "bf5338d99009c112ac8a8604112e208d090b970a",
      "parents": [
        "d4a02cfc59a449d216faa687cfdaa4252b4a433f"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Jun 23 15:39:01 2015 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Jun 23 15:41:27 2015 +0100"
      },
      "message": "ART: Improve Indenter performance.\n\nThis reduces the time taken by oatdump_test by ~15s (16%)\non host and ~30s (5%) on N5. The Indenter.overflow() was\npreviously the hottest function according to perf.\n\nChange-Id: I96eb69ce3f5420cd09dba23b29f8025cedc3d80a\n"
    },
    {
      "commit": "d4a02cfc59a449d216faa687cfdaa4252b4a433f",
      "tree": "dc0f23e71354403028b30f1592637e2d66db6210",
      "parents": [
        "0022bdf71533a300deebe6b9cf287eaceeb0620c",
        "33d6903e570daf8f3cf7c1f6ebd9a6dd22c7c23c"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Jun 23 13:53:54 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 23 13:53:55 2015 +0000"
      },
      "message": "Merge \"Replace some run-time assertions with compile-time ones in ART.\""
    },
    {
      "commit": "508755a3d4d3d67aa834c033c79073c0a08a8fbd",
      "tree": "afa4cd5bfcb6e65f67456083cca01ba801a82834",
      "parents": [
        "87dc1b09cee6e972fbe3ad48ba8b5ae68d37085f",
        "555b3d0fc62ecccb590dc8a07736ca4eda8722e7"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Jun 23 11:32:10 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 23 11:32:11 2015 +0000"
      },
      "message": "Merge \"Use GetOffsetDuringLinking instead of GetOffset.\""
    },
    {
      "commit": "555b3d0fc62ecccb590dc8a07736ca4eda8722e7",
      "tree": "893d24707ee1b686c381240229274d8ae2ffeff7",
      "parents": [
        "b5061a821d96cb1af7ba24d21a4d2d59f7f16c7c"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Jun 23 12:11:24 2015 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Jun 23 12:11:24 2015 +0100"
      },
      "message": "Use GetOffsetDuringLinking instead of GetOffset.\n\nGetOffset assumes the class has been resolved, but LinkFields\nis called before the class is marked as such.\n\nChange-Id: I6f9fc21cd220881806f00461a82a14e459e26a8b\n"
    },
    {
      "commit": "87dc1b09cee6e972fbe3ad48ba8b5ae68d37085f",
      "tree": "e266a61a68204d6f60a214267719e18b797f2ec2",
      "parents": [
        "b5061a821d96cb1af7ba24d21a4d2d59f7f16c7c",
        "41f9cc28f2c9edd3903ba6ca1c75b022445552ad"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Jun 23 11:00:19 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 23 11:00:19 2015 +0000"
      },
      "message": "Merge \"ART: Compiler generated GC map should take care of temp registers.\""
    },
    {
      "commit": "da0e224d79262b11fbac9e7b1fdc11c4df31b77f",
      "tree": "1394e3cf8839eae01fb0d5ed3573bf6399f0220a",
      "parents": [
        "3355963cee00fe97cc7aaeaab2c6e31c5657ff6a",
        "1ed11b9ad5512cf464cb1686640df53201fa5297"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Jun 23 03:27:44 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 23 03:27:45 2015 +0000"
      },
      "message": "Merge \"Restore DDMS recent allocation tracking\u0027s behavior\""
    },
    {
      "commit": "d4d83b84e14fdb3cba808fc5f94390c72b3d286a",
      "tree": "87c004fed700da781bb8f08a5cbaeab99de35dc0",
      "parents": [
        "336b0b1baaf2b3eccb26ccf1b7d502c90c3f33fd"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Jun 19 20:24:45 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Jun 22 20:25:27 2015 -0700"
      },
      "message": "Fix another miranda method moving GC bug\n\nNeed to copy miranda methods over before we allocate the new vtable\nor else we may have stale miranda gc roots.\n\n(cherry picked from commit 6e80460bdf0aa9bd273d4a4d665d679c651b5f4f)\n\nBug: 21664466\nChange-Id: Ib3e415bb9e7df7abfa18c98fe01f790fa39622dc\n"
    },
    {
      "commit": "1ed11b9ad5512cf464cb1686640df53201fa5297",
      "tree": "7466c110f74fb736a8f00e60a24ac841d1c0213a",
      "parents": [
        "5aa39bb7f93cf2e8f73d06980b588519825c0ebe"
      ],
      "author": {
        "name": "Man Cao",
        "email": "manc@google.com",
        "time": "Thu Jun 11 22:47:35 2015 -0700"
      },
      "committer": {
        "name": "Man Cao",
        "email": "manc@google.com",
        "time": "Mon Jun 22 16:52:08 2015 -0700"
      },
      "message": "Restore DDMS recent allocation tracking\u0027s behavior\n\nMake the allocation tracker mark recently allocated objects as roots,\nso the allocation records are not swept. Because DDMS needs recent\nallocation tracking records even for dead objects. This should fix\nthe flaky failures for 098-ddmc test, but it cannot pass GC stress\ntest (OOM). Re-enabled 098-ddmc for other tests.\n\nThere should be an option to not mark them as roots, when user only\nneeds HPROF dump with traces but not DDMS\u0027s recent allocation tracking.\nProbably need to add a new JNI API function for this option.\n\nThere could be another way to keep a second list of recent allocation\nrecords and maintain a type cache for them, so not to make the objects\nroots. But it\u0027s more complex, and not sure which is better.\n\nAlso reduce memory usage for AllocRecordStackTrace objects, and change\ndefault stack depth to 16. Rename the property that controls the stack\ndepth to \"debug.allocTracker.maxStackDepth\" so developer can change it.\n\nBug:20037135\nChange-Id: Ic6b9ae87bdcda558be6f14ded8057e763439881c\n"
    },
    {
      "commit": "336b0b1baaf2b3eccb26ccf1b7d502c90c3f33fd",
      "tree": "c7f5bd6059d2b5cd96207fb36ce0027d0867f10a",
      "parents": [
        "ac854d27aeafb3dca04dfc5c716d0436f1d5ffc1",
        "3552d96086c75523a76f399a13dd85d65eaa2d19"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Mon Jun 22 23:36:14 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 22 23:36:15 2015 +0000"
      },
      "message": "Merge \"base: Fix an infinite loop in HashSet::Insert\""
    },
    {
      "commit": "3552d96086c75523a76f399a13dd85d65eaa2d19",
      "tree": "6c3223813af09bdf81de7b7291b0a47153928052",
      "parents": [
        "ec3a4e7cdc4f268b40d923227c125429f4ee4884"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Mon Jun 22 15:57:38 2015 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Mon Jun 22 16:26:58 2015 -0700"
      },
      "message": "base: Fix an infinite loop in HashSet::Insert\n\nAlso adds a test for HashSet::ShrinkToMaximumLoad\n\n(This bug was only reachable when using ShrinkToMaximumLoad, which is not\ncalled from anywhere other than the new test)\n\nChange-Id: I5276b4b3f4ecf6090bb545ddd1752758b11609dd\n"
    },
    {
      "commit": "ac854d27aeafb3dca04dfc5c716d0436f1d5ffc1",
      "tree": "cdef2415dc736a6bdf2543139ca96f65e192101f",
      "parents": [
        "5aa39bb7f93cf2e8f73d06980b588519825c0ebe",
        "310008008c90fea246efd00cb99ee7ded97c5209"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Jun 22 22:58:54 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 22 22:58:55 2015 +0000"
      },
      "message": "Merge \"New experimental GC stress mode\""
    },
    {
      "commit": "310008008c90fea246efd00cb99ee7ded97c5209",
      "tree": "93ef04470ec9c883e003b0a8043b370b8f05718f",
      "parents": [
        "f7012291ed9c984e2b50d83d7a2d5758cd64c99a"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Sun Jun 14 14:14:37 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Jun 22 15:45:13 2015 -0700"
      },
      "message": "New experimental GC stress mode\n\nTries to do a GC for every unique call stack (up to 16 frames).\nThe goal is to catch moving GC bugs and lock violations without being\nrediculously slow. Some tests fail on 64 bits, 32 bit host doesn\u0027t\nwork. N5 is booting.\n\nAdded runtime -Xgc options: gcstress and nogcstress.\n\nBug: 21664466\n\nChange-Id: Icb8e420f2048e8ee83bcca7937563166a2638f5c\n"
    },
    {
      "commit": "13e0091d212e631945017a4c7b6669f30de344a4",
      "tree": "254a71f43158b8e22763c666f874533756d20541",
      "parents": [
        "d423552afd00bac3cdb523b9f8681f3f58163564"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Mon Jun 22 15:14:49 2015 -0700"
      },
      "committer": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Mon Jun 22 15:32:03 2015 -0700"
      },
      "message": "Change GC to allow strings to use large object space.\n\nBug: 21209641\n\n(cherry-picked from commit 37fd5275c665b483f2d990634a500c4e79aae87f)\n\nChange-Id: I043f59eeb601a95c7d01b10a844c2237167ee862\n"
    },
    {
      "commit": "b7c8c1a6cc84173d2d6826ea3a228708730570d1",
      "tree": "f3e696c9f4491c5bcc7858cbc971889b1f692d36",
      "parents": [
        "ec3a4e7cdc4f268b40d923227c125429f4ee4884"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Mon Jun 22 14:29:54 2015 -0700"
      },
      "committer": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Mon Jun 22 14:57:29 2015 -0700"
      },
      "message": "Make large string use large object space.\n\nBug: 21209641\n\n(cherry-picked from commit 38fafa18f0fcf610f6314a0fc4165e04e6e5d017)\n\nChange-Id: If6d708307ba1ecdde6bf856d31dceac9ee782fb7\n"
    },
    {
      "commit": "ec3a4e7cdc4f268b40d923227c125429f4ee4884",
      "tree": "d9bc031c772d062c2168c4fd7e8f5d8c4a64093c",
      "parents": [
        "11dc78c8d36b4a65f4d955bc4303cc8279f1151e",
        "2ee54e249ad21c74f29a161e248bebe7d22fddf1"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Mon Jun 22 21:15:01 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 22 21:15:02 2015 +0000"
      },
      "message": "Merge \"runtime: Partially implement box-lambda and unbox-lambda experimental opcodes\""
    },
    {
      "commit": "11dc78c8d36b4a65f4d955bc4303cc8279f1151e",
      "tree": "69f2d1a0119a62788dfdbec590269b0a83774dc8",
      "parents": [
        "f7012291ed9c984e2b50d83d7a2d5758cd64c99a",
        "68df32091cc79468c81956633e279523b48ea8bf"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 22 21:14:43 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 22 21:14:45 2015 +0000"
      },
      "message": "Merge \"ART: Allow checking RETURN_VOID_NO_BARRIER on unresolved classes\""
    },
    {
      "commit": "2ee54e249ad21c74f29a161e248bebe7d22fddf1",
      "tree": "125465dd7a6d23f83ecbf2d3454f21471868422c",
      "parents": [
        "158f35c98e2ec0d40d2c032b8cdce5fb60944a7f"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu Jun 18 10:05:11 2015 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Mon Jun 22 14:13:30 2015 -0700"
      },
      "message": "runtime: Partially implement box-lambda and unbox-lambda experimental opcodes\n\nThese opcodes are not yet fully specified, and *will* change before they become shippable.\nDo not write production code against experimental opcodes.\n\n--\n\nImplement partial interpreter support for new dex instructions box/unbox-lambda.\n* box-lambda will take a closure and convert it into an Object\n* unbox-lambda will take an Object and convert it to a closure\n\n(Currently does not implement object identity or variable capture).\n\nAll new opcodes are disabled by default, use runtime option -Xexperimental-lambdas to enable them.\n\nChange-Id: I3c15ccf8a26ccecd1d35808a8c1b4149220f6019\n"
    },
    {
      "commit": "f7012291ed9c984e2b50d83d7a2d5758cd64c99a",
      "tree": "96e689c729366cb1786c6e6a389566f50eff4b0a",
      "parents": [
        "ae393c3b24cfdad97aaded8c0ff1ee7262b46ffe",
        "46ec520fc2d08e4bb602472406be8fd1ef7ca73c"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Mon Jun 22 19:40:00 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 22 19:40:00 2015 +0000"
      },
      "message": "Merge \"Run an empty checkpoint before marking ends in the CC collector.\""
    },
    {
      "commit": "68df32091cc79468c81956633e279523b48ea8bf",
      "tree": "ac0868ff03740dc14800ebf02db202b9cbcc5101",
      "parents": [
        "59cb52189d350fa9fb38b767fa9b25d971375833"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 22 11:35:46 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 22 11:35:46 2015 -0700"
      },
      "message": "ART: Allow checking RETURN_VOID_NO_BARRIER on unresolved classes\n\nWe must check that all fields are non-final, even for unresolved\nclasses. Fall back to the dex file for this information.\n\nBug: 22005084\nBug: https://code.google.com/p/android/issues/detail?id\u003d177694\nChange-Id: If2126d1be5dccadbbedcdccabde7398688d6e5ca\n"
    },
    {
      "commit": "1bb907e47dc351ec530279a34e7af29f4c9574c8",
      "tree": "cba871f6ec359c16b818965e8edbb3961d6aabe2",
      "parents": [
        "59cb52189d350fa9fb38b767fa9b25d971375833"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 22 10:04:39 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 22 10:04:39 2015 -0700"
      },
      "message": "ART: Avoid recursive abort in barrier\n\nTry to avoid recursive abort in barrier. May lead to a segfault\ninstead of a nested abort in bad cases.\n\nChange-Id: I0e7976b77c243956dbcf81142bd5df81d5927ce0\n"
    },
    {
      "commit": "f91fb4a6a565809dd077ee128d11f30b67e6f2ff",
      "tree": "ee798864563d74a1664df0584b1b3203432a7d48",
      "parents": [
        "2d655f1ce89a714094a4f55ac75edcf9a34c7e24",
        "507cc6f83bf6379728f2dd20391f2ed5fbfe6371"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 22 14:50:42 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 22 14:50:43 2015 +0000"
      },
      "message": "Merge \"ART: Disallow classes that are abstract and final\""
    },
    {
      "commit": "f561aab4decda4ae559955f18eb04a3f48d8c706",
      "tree": "5aa15fe13e24b467abccf3028878b4ad737e7912",
      "parents": [
        "ae370391057b88607b0e451fdea020b257684b91"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Jun 19 15:23:46 2015 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Jun 22 11:28:07 2015 +0000"
      },
      "message": "fault_handler : debug output sp in hex and not decimal.\n\nEasier to compare against hex values in tombstones and debuggerd\ndumps.\n\nChange-Id: I4a4512ea1ce5872fdb6b41e824fa3475dfcfb71d\n"
    },
    {
      "commit": "507cc6f83bf6379728f2dd20391f2ed5fbfe6371",
      "tree": "62aaeddc8dcf1fb652b92472d1327c31b4f84942",
      "parents": [
        "1e73a95d74848020fab512a95a7f9a7ada72497b"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jun 19 22:58:47 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jun 19 22:58:47 2015 -0700"
      },
      "message": "ART: Disallow classes that are abstract and final\n\nMake the verifier fail such classes.\n\nBug: 21873151\nChange-Id: I217f3d71f44bccdcee7ca830e092c807928bed39\n"
    },
    {
      "commit": "a60bd74737fcd1b3737bc523741efa1097bbd782",
      "tree": "35069a0c16e84be12d599e6062fef8858ddecc89",
      "parents": [
        "ba7837b2308aeaaa613383297737488af558aed7",
        "ef0b1a1dbc99fe7c92f9598cbfc164763c1b66d7"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Sat Jun 20 04:03:20 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jun 20 04:03:21 2015 +0000"
      },
      "message": "Merge \"ART: Check for expected args for instance methods\""
    },
    {
      "commit": "ef0b1a1dbc99fe7c92f9598cbfc164763c1b66d7",
      "tree": "a644d45fae2717442d15927b196786ff175c56d8",
      "parents": [
        "0420f81a5c6c08bc62060b8ff5dda8949f9a9ce9"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jun 19 20:37:46 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jun 19 20:46:23 2015 -0700"
      },
      "message": "ART: Check for expected args for instance methods\n\nDon\u0027t assume that the receiver is expected. This was writing out\nof bounds (or triggering a DCHECK).\n\nBug: 21817284\nBug: 21872240\nBug: https://code.google.com/p/android/issues/detail?id\u003d176571\nBug: https://code.google.com/p/android/issues/detail?id\u003d176572\nChange-Id: I7cad2c1dfc39feb0b1b4660deeb43afdcb844ba3\n"
    },
    {
      "commit": "ba7837b2308aeaaa613383297737488af558aed7",
      "tree": "4e4b199a55ffa3b287e7dd3175f8b46ebd412f3d",
      "parents": [
        "d1a06338b9aa818b730ef1d46549a09af8f35c5b",
        "29498a23bcfe47a7134552aacad5524ecb484a49"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Sat Jun 20 00:43:39 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jun 20 00:43:39 2015 +0000"
      },
      "message": "Merge \"ART: Check var-arg count earlier in method verifier\""
    },
    {
      "commit": "46ec520fc2d08e4bb602472406be8fd1ef7ca73c",
      "tree": "b50482cc1bd09ed03aa6fd2a5c212520c098c7cc",
      "parents": [
        "d5ff8c584b230da350f4ebfffec1d245c09bf26b"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Fri Jun 19 17:39:45 2015 -0700"
      },
      "committer": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Fri Jun 19 17:42:46 2015 -0700"
      },
      "message": "Run an empty checkpoint before marking ends in the CC collector.\n\nTo avoid a race condition between the end of marking and a mutator\nstill in the middle of a read barrier.\n\nBug: 12687968\nBug: 21564728\nChange-Id: I4962d895b4df89d2bcde97cbabdb98a14a19dd6b\n"
    },
    {
      "commit": "29498a23bcfe47a7134552aacad5524ecb484a49",
      "tree": "0f677bef57ab626caf3877e19df4e090920e2241",
      "parents": [
        "0420f81a5c6c08bc62060b8ff5dda8949f9a9ce9"
      ],
      "author": {
        "name": "Taiju Tsuiki",
        "email": "tzik@google.com",
        "time": "Mon Apr 13 14:21:00 2015 +0900"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jun 19 17:41:23 2015 -0700"
      },
      "message": "ART: Check var-arg count earlier in method verifier\n\nCheck the count in vararg instructions before filling the temp\narray. Avoids a DCHECK.\n\nBug: 21869663\nBug: 20170976\n\nChange-Id: I1ff93502ab84c5967ad54d1b50dba517da791637\n"
    },
    {
      "commit": "e43875749fbc674fbad23ba11af64f25ab2add0d",
      "tree": "8cd2ff04d87f76d87fa9c21c43fab04c9abe9c51",
      "parents": [
        "be59b85251f085359d40bb89b1aa7e037c8ac0ef",
        "66389fbeb41c981648bb2e1e7e2f43089f095591"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jun 19 11:02:16 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 19 11:02:17 2015 +0000"
      },
      "message": "Merge \"Verifier: check an aput, even if we know it will fail.\""
    },
    {
      "commit": "66389fbeb41c981648bb2e1e7e2f43089f095591",
      "tree": "f6de19a8521f2e33d5c75771867bcf569e6d2ef4",
      "parents": [
        "822c00d0fe3b70d1f1fe5bac03713674d45f8173"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jun 19 10:35:42 2015 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jun 19 10:37:59 2015 +0100"
      },
      "message": "Verifier: check an aput, even if we know it will fail.\n\nbug:21867457\nChange-Id: I01e333d858995d0e1e083a50cf8d460a86381f2c\n"
    },
    {
      "commit": "f12ffdb549f1947125e3f56694cb479a619f02bf",
      "tree": "f7d34a8fcc4521269490c04a4586213a0e85bd8e",
      "parents": [
        "542ca97d3e4266896407b9abd29b36b1c59d798c",
        "52ea33b10370d60d4ce877aec529626537b7813b"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Jun 19 00:00:07 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 19 00:00:07 2015 +0000"
      },
      "message": "Merge \"Fix moving GC bug in DoFilledNewArray\""
    },
    {
      "commit": "52ea33b10370d60d4ce877aec529626537b7813b",
      "tree": "29f82ff0237589ead820356fd01eb43d9473fb4d",
      "parents": [
        "5592c688070fa327f56036c4c67c790289db63d9"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jun 18 16:48:52 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jun 18 16:49:05 2015 -0700"
      },
      "message": "Fix moving GC bug in DoFilledNewArray\n\nPreviously we read from componentClass after allocating the array.\n\nBug: 21783443\n\nChange-Id: I5283982edab479434e27416509e1436b4176fe01\n"
    },
    {
      "commit": "46d8702167d679dbf87ba9fa8fd0f1b6bbb3ed62",
      "tree": "6ebe7d6e313475d7b969b29f5a4754af6f1bd90c",
      "parents": [
        "247e97746016b49183b52f4c386bedf7cd53e590",
        "9346ff0cfad6344d0bf4eaa69362dbe1987ac054"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jun 18 20:01:24 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 18 20:01:24 2015 +0000"
      },
      "message": "Merge \"Fix moving GC bugs in proxy stub for X86/X86_64\""
    },
    {
      "commit": "247e97746016b49183b52f4c386bedf7cd53e590",
      "tree": "758c0a7c60c2099fb6a8cf2d4ea68ffc8c9459ac",
      "parents": [
        "2b696ab55e817b583d7b3b3ffd39e48c38db6989",
        "158f35c98e2ec0d40d2c032b8cdce5fb60944a7f"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu Jun 18 19:56:57 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 18 19:56:58 2015 +0000"
      },
      "message": "Merge \"interpreter: Add experimental lambda opcodes for invoke/create-lambda\""
    },
    {
      "commit": "9346ff0cfad6344d0bf4eaa69362dbe1987ac054",
      "tree": "b54b7a4ea4025173f89640a753d09384bb7f914a",
      "parents": [
        "f16474d08ed51a3ccfaa70360aefdf12ebc79da1"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jun 18 10:17:26 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jun 18 11:51:25 2015 -0700"
      },
      "message": "Fix moving GC bugs in proxy stub for X86/X86_64\n\nNeeded to restore the refs.\n\nBug: 21907554\nChange-Id: I562906dff07dcaa78dfb39646ba9ab35a5f56c6c\n"
    },
    {
      "commit": "158f35c98e2ec0d40d2c032b8cdce5fb60944a7f",
      "tree": "63bb3bbed85b0add42c7fdc714cd611424d8af2e",
      "parents": [
        "c449e8b79aaaf156ce055524c41474cc1200ed5a"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed Jun 10 15:55:30 2015 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu Jun 18 10:22:27 2015 -0700"
      },
      "message": "interpreter: Add experimental lambda opcodes for invoke/create-lambda\n\nThese opcodes are not yet fully specified, and *will* change before they become shippable.\nDo not write production code against experimental opcodes.\n\n--\n\nImplement partial interpreter support for new dex instructions invoke/create-lambda, and a\nnew opcode format 25x.\n\n* Does not verify, in fact verification will soft fail when we see those opcodes.\n* Compilers will punt to interpreter since they don\u0027t support new opcodes.\n* As there is no way to capture/liberate variables yet, the \"closure\" is just\n  an ArtMethod for the time being.\n\nAll new opcodes are disabled by default, use runtime option -Xexperimental-lambdas to enable them.\n\nFor example:\n  dalvikvm ... -Xexperimental-lambdas ...\n  dex2oat --runtime-arg -Xexperimental-lambdas ...\n\nChange-Id: I6c996ca32a9b54ec45ec21d7a959b84dfb8a24eb\n"
    },
    {
      "commit": "33d6903e570daf8f3cf7c1f6ebd9a6dd22c7c23c",
      "tree": "8069008292fe085d051300f1a871392dc413f820",
      "parents": [
        "822c00d0fe3b70d1f1fe5bac03713674d45f8173"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jun 18 18:20:59 2015 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jun 18 18:20:59 2015 +0100"
      },
      "message": "Replace some run-time assertions with compile-time ones in ART.\n\nChange-Id: I16c3fad45c4b98b94b7c83d071374096e81d407a\n"
    },
    {
      "commit": "46ff9b6100e66306233534e26c16d3c6738070a9",
      "tree": "d873cf286172ae95c87bc760cb9bdaae62a7b73c",
      "parents": [
        "d4de42f6fd0f00c5b3ca01fed6a26d11e617c3b9",
        "07785bb98dc8bbe192970e0f4c2cafd338a8dc68"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Jun 18 14:19:22 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 18 14:19:23 2015 +0000"
      },
      "message": "Merge \"ART: Fix reporting initialized classes by CompilerDriver.\""
    },
    {
      "commit": "07785bb98dc8bbe192970e0f4c2cafd338a8dc68",
      "tree": "d12a20d7790fffc8648d7da6a7944595516c1d89",
      "parents": [
        "6ebf70ec61eff097e1bdddb1b887316389e34dde"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jun 15 18:52:54 2015 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Jun 18 12:44:51 2015 +0100"
      },
      "message": "ART: Fix reporting initialized classes by CompilerDriver.\n\nFix a bug where the CompilerDriver was erroneously reporting\nclasses as initialized during AOT compilation when they were\nnot guaranteed to be initialized at runtime.\n\nThis fix prevents the Quick compiler from inlining calls to\nstatic methods in classes that are not guaranteed to be\ninitialized, so that the runtime performs the initialization\nrequired for correctness.\n\nBug: 21847756\nChange-Id: I6fee5ef9c05c2e5190ab8a9fe61365d5119011c5\n"
    },
    {
      "commit": "05b7226787f1470ad93f6f632fed60f70bc8631e",
      "tree": "0f73cb94559ad3eeec6b6bb863377f4cb7366af1",
      "parents": [
        "5592c688070fa327f56036c4c67c790289db63d9"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jun 17 16:11:12 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jun 17 16:55:40 2015 -0700"
      },
      "message": "Fix some java_lang_Class related moving GC bugs\n\nThere was some missing handles around mirror::Class*.\n\nBug: 21898408\nChange-Id: Icb754074dfb469473101d20d6873a5bc3274abc5\n"
    },
    {
      "commit": "5592c688070fa327f56036c4c67c790289db63d9",
      "tree": "7dd43aa4603984616517474ca89e27e2ec18378f",
      "parents": [
        "0420f81a5c6c08bc62060b8ff5dda8949f9a9ce9",
        "4d122c180c3ff8c677cbaae83e856acf0d856498"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jun 17 22:42:46 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 17 22:42:47 2015 +0000"
      },
      "message": "Merge \"Add missing EndAssertNoThreadSuspension\""
    },
    {
      "commit": "0420f81a5c6c08bc62060b8ff5dda8949f9a9ce9",
      "tree": "2a258a5c9c0f2a5cb719d04eed161a0b432a91bf",
      "parents": [
        "b66fda7c7e2e3c24e2a146c3f9d904b1828346a1",
        "82e73dcc290ae8603c8a2e533d6a8a19cc2983a3"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Jun 17 21:59:58 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 17 21:59:59 2015 +0000"
      },
      "message": "Merge \"Release dummy MemMaps corresponding to dlopen.\""
    },
    {
      "commit": "82e73dcc290ae8603c8a2e533d6a8a19cc2983a3",
      "tree": "6677966c718dc1067eea0c9e8108fe590c03669e",
      "parents": [
        "b3e3000a59a3b0d765840bd1a939213a2b400763"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Jun 17 18:36:23 2015 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Jun 17 22:52:48 2015 +0100"
      },
      "message": "Release dummy MemMaps corresponding to dlopen.\n\nThis fixes memory leak.\n\nChange-Id: I857f078e8559a56b2d10dd081256c41ab28c8ec6\n"
    },
    {
      "commit": "4d122c180c3ff8c677cbaae83e856acf0d856498",
      "tree": "2551515ef0f48620ac5dca714a8cf63d78eb276c",
      "parents": [
        "b66fda7c7e2e3c24e2a146c3f9d904b1828346a1"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jun 17 14:14:36 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jun 17 14:30:59 2015 -0700"
      },
      "message": "Add missing EndAssertNoThreadSuspension\n\n(cherry picked from commit a3b9d4eda1ef0845f307891f349eaf752750ac16)\n\nBug: 21872507\nChange-Id: I20f9920e4a12511ce498c252bca955d82a4f4102\n"
    },
    {
      "commit": "2ef645ba50544b879a82ea30e606f18c9af98917",
      "tree": "25d18676c87c9738624793f2983bc0e87faecf6e",
      "parents": [
        "43d154bed3ad0bba766211af1f2637500d30a93f"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Jun 17 18:20:52 2015 +0100"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Jun 17 18:25:03 2015 +0100"
      },
      "message": "ART: Allow PackedSwitch instructions with zero targets\n\nOptimizing and the interpreter wrongly assumed that a PackedSwitch\nalways has at least one target. This patch removes the corresponding\nDCHECKs and adds a regression test case.\n\nThis is a resubmission of CL I32b7033ed38de6f1d1a6ee5d5bf12f3a47c9b37e\n\nBug: 21863783\nChange-Id: I04e6e124bdd16591ba27c79490e6ce183c36b691\n"
    },
    {
      "commit": "41f9cc28f2c9edd3903ba6ca1c75b022445552ad",
      "tree": "92e485e7bbf4e43ef4e40fd2824610074888a8ce",
      "parents": [
        "c4977a58b1feca22a83fd5239aa266c7ce16ab87"
      ],
      "author": {
        "name": "Pavel Vyssotski",
        "email": "pavel.n.vyssotski@intel.com",
        "time": "Tue Jun 16 17:57:37 2015 +0600"
      },
      "committer": {
        "name": "Pavel Vyssotski",
        "email": "pavel.n.vyssotski@intel.com",
        "time": "Wed Jun 17 16:28:57 2015 +0600"
      },
      "message": "ART: Compiler generated GC map should take care of temp registers.\n\nIf the compiler use a temp register as a reference it should be\nadded to generated GC map along with other SSA regs.\n\nChange-Id: I3c79896dcd72228c9cf2bbbe737642d9ffb7684d\nSigned-off-by: Pavel Vyssotski \u003cpavel.n.vyssotski@intel.com\u003e\n"
    },
    {
      "commit": "445e35028bc5cb6d921dc60e579b7b40ceb16c71",
      "tree": "7878cb9d6ee9aa9c07f8a6272a666ced151cbc86",
      "parents": [
        "a28905535905ed2b86de6f621991b8775beb493e",
        "12bdb72221f344ba0d86f338cc0feb49799c37f0"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jun 17 09:19:09 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 17 09:19:13 2015 +0000"
      },
      "message": "Merge \"More stack map dumping.\""
    },
    {
      "commit": "12bdb72221f344ba0d86f338cc0feb49799c37f0",
      "tree": "2e67328d604f9904f779a66c8389bca7aa435347",
      "parents": [
        "088bd0d28acb70302d20f6e19a9db7f0536c09ee"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jun 17 09:44:43 2015 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jun 17 10:01:29 2015 +0100"
      },
      "message": "More stack map dumping.\n\nChange-Id: I1f734c0c9eabda1cc6adaf32579e4c3be4a45c9a\n"
    },
    {
      "commit": "c37769b63faf7b120a6ed80f5cfb92667f5090c4",
      "tree": "6b5d743c3f2a41db3c97383271ba6c9d7ec28986",
      "parents": [
        "088bd0d28acb70302d20f6e19a9db7f0536c09ee"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed Jun 17 09:49:40 2015 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed Jun 17 09:54:19 2015 +0100"
      },
      "message": "Fix lint error.\n\nBlank line at the start of a code block.\n\nChange-Id: Ifc0d78acc8b2eecbdc1a340009757f9218ce2c5c\n"
    },
    {
      "commit": "f775bab533cd385c00ee30b56bdcb6f962fc5239",
      "tree": "ec75c8e59ccb6c8ef0224ecec943d44bf7eca4e7",
      "parents": [
        "ed44919da8f7ab96117fd9d30b3fbfcd88f1433c"
      ],
      "author": {
        "name": "Oleksiy Vyalov",
        "email": "ovyalov@google.com",
        "time": "Sun Jun 14 15:17:26 2015 -0700"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed Jun 17 09:16:09 2015 +0100"
      },
      "message": "Set default visibility on art_sigsegv_fault.\n\nlibart.so is built with flag -fvisibility\u003dprotected\nwhich complicates setting breakpoints on art_sigsegv_fault.\nAccording to the GCC manual \"Protected visibility indicates\nthat the symbol will be placed in the dynamic symbol table,\nbut that references within the defining module will bind\nto the local symbol.\". This implies that a breakpoint on\na protected symbol will not be hit.\n\nWithout this change gdbclient with ART debugging enabled\ndoesn\u0027t break at art_sigsegv_fault as expected.\n\nChange-Id: Ib73344e710966eddf55a6facb29558504a511f00\n"
    },
    {
      "commit": "aa03870a9d3fe29fe89bd313c51a9cfb69edc775",
      "tree": "87548fbeba425f553a7cce7b6fa58d318b47e05b",
      "parents": [
        "89c63739e280ab94399d263624558e1d99fb5af7"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Jun 17 02:11:07 2015 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Jun 17 02:54:17 2015 +0100"
      },
      "message": "Find the dlopened file using address rather than file path.\n\nThis should fix the build bot.  It was failing because the\npath which we pass to dlopen is not the path that gets mmaped.\n\nBug: 21854739\nChange-Id: I0c28c74b62743f74f9ff3ae89e6f1beb0c1113ae\n"
    },
    {
      "commit": "89c63739e280ab94399d263624558e1d99fb5af7",
      "tree": "0043b50a85da25d438b99b5b139093c79c7193f5",
      "parents": [
        "86b35f97ce1848608e70eb1f0ea9f73d25b80d09",
        "5dedb808acf84712daf7dee3cf8137d4e34b4b78"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Jun 16 23:20:40 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 16 23:20:40 2015 +0000"
      },
      "message": "Merge \"Add more logging output for dlopen.\""
    },
    {
      "commit": "86b35f97ce1848608e70eb1f0ea9f73d25b80d09",
      "tree": "a3e620c8fe65761db65736fc33a517217cc226ba",
      "parents": [
        "7e7e69a0421e30f5e6ffa498db25dfd0c13d500e",
        "1baabf0726eb285284e0c908ccba9f209b399fae"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Jun 16 23:20:08 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 16 23:20:09 2015 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Use dlopen to load oat files.\"\"\""
    },
    {
      "commit": "5dedb808acf84712daf7dee3cf8137d4e34b4b78",
      "tree": "b0ee9acc9f7d8036240a3e15e2fd30cf0bbbac8f",
      "parents": [
        "1baabf0726eb285284e0c908ccba9f209b399fae"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Jun 17 00:08:02 2015 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Jun 17 00:11:32 2015 +0100"
      },
      "message": "Add more logging output for dlopen.\n\nInvestigation of build bot failure which I can not reproduce locally.\n\nBug: 21854739\nChange-Id: I4584bb10ad44e4bcf8232c060e40b36ff924ffa2\n"
    },
    {
      "commit": "7e7e69a0421e30f5e6ffa498db25dfd0c13d500e",
      "tree": "cba3c171c6fa25184dc3d5a2979d879e2c40ee63",
      "parents": [
        "977be5f1337e58c48aaa91822773d301117accfc",
        "3f64f25151780fdea3511be62b4fe50775f86541"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Tue Jun 16 19:25:00 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 16 19:25:01 2015 +0000"
      },
      "message": "Merge \"Print more diagnosis info on to-space invariant violation.\""
    },
    {
      "commit": "1baabf0726eb285284e0c908ccba9f209b399fae",
      "tree": "0dc531c157f72a1413079f765e7437280673f93b",
      "parents": [
        "7a46b7e235a7c35191cd9ddbab6ca4db0e535da5"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Jun 16 17:12:34 2015 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Jun 16 17:12:34 2015 +0000"
      },
      "message": "Revert \"Revert \"Use dlopen to load oat files.\"\"\n\nThis reverts commit 7a46b7e235a7c35191cd9ddbab6ca4db0e535da5.\n\nChange-Id: I33439d0e3d7a7e63591a8c7b356e716dcb62bca1\n"
    },
    {
      "commit": "3f64f25151780fdea3511be62b4fe50775f86541",
      "tree": "732f9761dce6ef0d4ab6fad18c92137f38248cc5",
      "parents": [
        "8d73a91d8f4c89ac152d18081b07093f68c56a11"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Fri Jun 12 18:35:06 2015 -0700"
      },
      "committer": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Mon Jun 15 17:09:33 2015 -0700"
      },
      "message": "Print more diagnosis info on to-space invariant violation.\n\nPass the method/field (in GcRootSource) to the read barrier to print\nmore info when a to-space invariant violation is detected on a\nmethod/field GC root access.\n\nRefactor ConcurrentCopying::AssertToSpaceInvariant().\n\nBug: 12687968\nBug: 21564728\n\nChange-Id: I3a5fde1f41969349b0fee6cd9217b948d5241a7c\n"
    },
    {
      "commit": "f6c77d7632bdfe564c2ba61690fecc65f10ea9f6",
      "tree": "af87ccb86c7e0622912bf088a464716166ea450a",
      "parents": [
        "6ebf70ec61eff097e1bdddb1b887316389e34dde",
        "7a46b7e235a7c35191cd9ddbab6ca4db0e535da5"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Jun 15 23:44:58 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 15 23:44:59 2015 +0000"
      },
      "message": "Merge \"Revert \"Use dlopen to load oat files.\"\""
    },
    {
      "commit": "7a46b7e235a7c35191cd9ddbab6ca4db0e535da5",
      "tree": "e69c91d2c7903fb99083b047d2c468da2cc51f80",
      "parents": [
        "49e1fabc85480f01077f3cc10e8ba6ada6e4befa"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Jun 15 23:44:08 2015 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Jun 15 23:44:08 2015 +0000"
      },
      "message": "Revert \"Use dlopen to load oat files.\"\n\nThis reverts commit 49e1fabc85480f01077f3cc10e8ba6ada6e4befa.\n\nChange-Id: If49e8b60c458a992519b7fdabe02e7d53830edab\n"
    },
    {
      "commit": "3976e5e0d3bc05e4a90eb450821cfb82cd18bfa2",
      "tree": "894d678cd6943b4c98d8de232ec552394dc1e4a6",
      "parents": [
        "d11db7dd312a64928fa41a2d7472f49ede0c7346"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Jun 15 08:58:03 2015 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Jun 15 08:58:03 2015 +0100"
      },
      "message": "Fix lint error.\n\nChange-Id: I839d547bd3f7c814e2db2b9b40119fdd13469ee6\n"
    },
    {
      "commit": "d11db7dd312a64928fa41a2d7472f49ede0c7346",
      "tree": "3a89f1eb545bf256b053519581681e8d334d6e4f",
      "parents": [
        "73536e0a4fbdc454229949491bd8e5cce72cd660",
        "32c9ea5c03b1b22f36233ec6c24eca87c77f9157"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Jun 15 07:46:41 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 15 07:46:42 2015 +0000"
      },
      "message": "Merge \"Use the caller\u0027s class loader when walking inlined frames.\""
    },
    {
      "commit": "88da3b0d2f76b1d6b9749315ac0c5b0367e92262",
      "tree": "81850061f30a513e02670b105c4b25053dbb87cc",
      "parents": [
        "dbef9aa7439facbe9efdcb6ad1522857b5b3a398"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jun 12 20:38:49 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jun 12 20:38:49 2015 -0700"
      },
      "message": "ART: Fix CFI test wrt/ PIC\n\nPIC boot images can\u0027t be loaded with dlopen, as their base is zero,\nbut we have an expectant address. Turn off in-process unwinding\nin 137-cfi by checking the boot image oat file type.\n\nKeep a non-owned referenced to the oat file in image space to simplify\naccess.\n\nChange-Id: Ia2b525f9b2ecbc80b433f09e04ebece4cb6f2d2b\n"
    },
    {
      "commit": "dbef9aa7439facbe9efdcb6ad1522857b5b3a398",
      "tree": "c02210799c6601484a33903d130938dad2c02761",
      "parents": [
        "28c25d2bdf71ec5e7fecb6db1ee82ef2af386dbe",
        "01d4b5072c064d927260486c891a09fe689289c0"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Sat Jun 13 00:53:10 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jun 13 00:53:11 2015 +0000"
      },
      "message": "Merge \"Pass reuse flag to MemMap constructor\""
    },
    {
      "commit": "28c25d2bdf71ec5e7fecb6db1ee82ef2af386dbe",
      "tree": "bf31324a8ed74074ded1feadfc2f1a8b3358cbcf",
      "parents": [
        "4366369f1151cd703073f805036793e2f7255571",
        "906846fc297bd0c2346f62338508ba9ac0c3baa4"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Sat Jun 13 00:43:56 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jun 13 00:44:04 2015 +0000"
      },
      "message": "Merge \"Let classloader provide correct LD_LIBRARY_PATH\""
    },
    {
      "commit": "01d4b5072c064d927260486c891a09fe689289c0",
      "tree": "f494fc108b4b65d5a43809845a3d8de4ada27d7b",
      "parents": [
        "4366369f1151cd703073f805036793e2f7255571"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Jun 12 17:32:31 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Jun 12 17:32:31 2015 -0700"
      },
      "message": "Pass reuse flag to MemMap constructor\n\nBug: 21806978\nChange-Id: Iec92220d8f42e1d702ee39b27a8de570ea1ab588\n"
    }
  ],
  "next": "4366369f1151cd703073f805036793e2f7255571"
}
