)]}'
{
  "log": [
    {
      "commit": "7643e41206279d1c22fdddff450c2d7bdd585b54",
      "tree": "7ba9b3d654b721c7288208fd8b6f8e5331fa3588",
      "parents": [
        "a8822d460db2ee9c189f16589ab553e3a7751ff1",
        "96f0ec14ba78e4d869065fdcf69b33008927505c"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Jun 11 11:43:59 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 11 11:43:59 2018 +0000"
      },
      "message": "Merge \"Remove DCHECK while investigating.\""
    },
    {
      "commit": "a8822d460db2ee9c189f16589ab553e3a7751ff1",
      "tree": "d763f2193a07fe328cbbf94be00f624fa7aeacdd",
      "parents": [
        "20c64f8d802cc575cc9a1a1f6c493a611b23e2ee",
        "f75613cb7c5cda6a4603ab7041d6f98ec62a80cd"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jun 11 09:01:01 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 11 09:01:01 2018 +0000"
      },
      "message": "Merge \"Keep objects for Integer.valueOf() intrinsic alive.\""
    },
    {
      "commit": "20c64f8d802cc575cc9a1a1f6c493a611b23e2ee",
      "tree": "1fcfef016c7f2fca79a4e2c37a42c9058ad746f4",
      "parents": [
        "456dc5c7c70c45bf290c236aa1514b1274f120e1",
        "18e2687c4126d66870d61d6548abc2c7661a66cc"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Jun 08 16:39:58 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 08 16:39:58 2018 +0000"
      },
      "message": "Merge \"Refactor ClassAccessor to use an index instead of ClassDef pointer\""
    },
    {
      "commit": "456dc5c7c70c45bf290c236aa1514b1274f120e1",
      "tree": "4c9bc3a1c2b2811547f48a07796b9eace8d8f7e3",
      "parents": [
        "cf8e60fceee8b622b63f022e7b37f7df0f604320",
        "cd260ebf53e0e05bd75c37c4139f32782eb4ad97"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jun 08 15:43:30 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 08 15:43:30 2018 +0000"
      },
      "message": "Merge \"ART: Simplify invoke-polymorphic entrypoints\""
    },
    {
      "commit": "96f0ec14ba78e4d869065fdcf69b33008927505c",
      "tree": "7c2db50c9b598bf5da9c275dee2486cc0a50acb1",
      "parents": [
        "408bdc604e4fe230bf90ffa6816bfbbb3786806e"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jun 08 15:30:20 2018 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jun 08 15:30:20 2018 +0100"
      },
      "message": "Remove DCHECK while investigating.\n\nbug: 109666561\nTest: m\nChange-Id: Ia10990d7caeb37d23d3096b087541aac9eea0c3d\n"
    },
    {
      "commit": "cf8e60fceee8b622b63f022e7b37f7df0f604320",
      "tree": "571b0f76990d1fe9e72c9e373aa18398698371df",
      "parents": [
        "408bdc604e4fe230bf90ffa6816bfbbb3786806e",
        "92149d0a8e651a1d0f46bf4c94bdac809aa034ab"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jun 08 14:18:04 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 08 14:18:04 2018 +0000"
      },
      "message": "Merge \"Blacklist test.\""
    },
    {
      "commit": "cd260ebf53e0e05bd75c37c4139f32782eb4ad97",
      "tree": "dab8e9054c59c16303ab9c8aeed01edeb0bb12da",
      "parents": [
        "408bdc604e4fe230bf90ffa6816bfbbb3786806e"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Jun 06 09:04:17 2018 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Jun 08 14:56:10 2018 +0100"
      },
      "message": "ART: Simplify invoke-polymorphic entrypoints\n\nMoves to pattern used by the interpreter bridge and writes the result\nin both the regular return register and the floating point result\nregister.\n\nAdd return value tests to 956-method-handles.\n\nTest: art/test.py --host -r -t 956\nTest: art/test.py --target --32 -r -t 956\nTest: art/test.py --target --64 -r -t 956\nChange-Id: I7389d04b70b88e149682f6d656ab185e48bcbf66\n"
    },
    {
      "commit": "92149d0a8e651a1d0f46bf4c94bdac809aa034ab",
      "tree": "1daf5b0ec482a1069b3fda3bfe85082d4a244c86",
      "parents": [
        "e5a0dd8e2a985bd4f6469cf3ab86806b158b2f73"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jun 08 10:36:45 2018 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jun 08 13:32:24 2018 +0100"
      },
      "message": "Blacklist test.\n\nbug: 109791792\nTest: m\nChange-Id: I1332794e8c1ee190ec5683ba5c3dbf519e02a487\n"
    },
    {
      "commit": "408bdc604e4fe230bf90ffa6816bfbbb3786806e",
      "tree": "3155605d4dfe13c5700081426c32868d3817eace",
      "parents": [
        "a4bae540b7c91136aaab02fd1638c8df6cb96970",
        "26d465f1d8ca2b66b9c2766c9019aa2033d0e1be"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jun 08 11:24:27 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 08 11:24:27 2018 +0000"
      },
      "message": "Merge \"Add a tradefed config for ahat\u0027s unit tests.\""
    },
    {
      "commit": "a4bae540b7c91136aaab02fd1638c8df6cb96970",
      "tree": "eb517cc7ba2a3b0d37b9be26e8b811d9f015d672",
      "parents": [
        "bac28b0d5fb0765291adf8379bc502783cbb15b0",
        "fd89b0739d4000ea70f28bf53dea531027024f5a"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Jun 08 11:14:39 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 08 11:14:39 2018 +0000"
      },
      "message": "Merge \"Remove unused GetDexRegisterMap arguments.\""
    },
    {
      "commit": "bac28b0d5fb0765291adf8379bc502783cbb15b0",
      "tree": "779a3f4e2e4f3274c8a6777e910e209841f80d06",
      "parents": [
        "e5a0dd8e2a985bd4f6469cf3ab86806b158b2f73",
        "fb57a6528d73e6ddbccf3049f08f6fa400e6dcd1"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jun 08 09:40:51 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 08 09:40:51 2018 +0000"
      },
      "message": "Merge \"Revert \"Revert^2 \"Make adbconnection start automatically for debuggable apps (on target)\"\"\""
    },
    {
      "commit": "fb57a6528d73e6ddbccf3049f08f6fa400e6dcd1",
      "tree": "e334f68df51c6078fd51f293a38146c6fcb6c106",
      "parents": [
        "7b39a39258311ad6c3da5934746a186c185c3f4f"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jun 08 09:40:19 2018 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jun 08 09:40:19 2018 +0000"
      },
      "message": "Revert \"Revert^2 \"Make adbconnection start automatically for debuggable apps (on target)\"\"\n\nThis reverts commit 7b39a39258311ad6c3da5934746a186c185c3f4f.\n\nFails jdwp tests on target.\n\nBug: 109505014\nChange-Id: Ib8a278bc8c8137e1f1397e3e881d652504fea96f\n"
    },
    {
      "commit": "26d465f1d8ca2b66b9c2766c9019aa2033d0e1be",
      "tree": "123013249d77b24641a2d86e4bd6c9fbc40af0e9",
      "parents": [
        "2b40dd35c65ad644d448611750f5b577e97594a1"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Thu Jun 07 13:08:08 2018 +0100"
      },
      "committer": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Fri Jun 08 10:19:01 2018 +0100"
      },
      "message": "Add a tradefed config for ahat\u0027s unit tests.\n\nAnd a minor unrelated style cleanup.\n\nBug: 38219110\nTest: m ahat-test\nTest: tradefed.sh run AndroidTest.xml, without devices attached.\nChange-Id: Ifcb99ee08a43925ae79bb223a948522ab21c99c6\n"
    },
    {
      "commit": "e5a0dd8e2a985bd4f6469cf3ab86806b158b2f73",
      "tree": "24bb37e4766641fc577b4f892bdca9bc42185c48",
      "parents": [
        "f69a5111fef6d0922b67c0493c7b78cbe451890a",
        "87547c967d58a465737375af0b5847d1085da6d3"
      ],
      "author": {
        "name": "Tamas Kenez",
        "email": "tamaskenez@google.com",
        "time": "Fri Jun 08 07:36:11 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 08 07:36:11 2018 +0000"
      },
      "message": "Merge \"ART-tests: Remove DX-dependency from 565-checker-doublenegbitwise\""
    },
    {
      "commit": "f69a5111fef6d0922b67c0493c7b78cbe451890a",
      "tree": "95295df45bbb0ea2b436275932e25d32aeb909a3",
      "parents": [
        "803a8d73f1c8b3f331e2bbf2aba037f6c93d18dc",
        "4459baee5d3042310cd2de94b7801f90ccf2504b"
      ],
      "author": {
        "name": "Tamas Kenez",
        "email": "tamaskenez@google.com",
        "time": "Fri Jun 08 07:35:26 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 08 07:35:26 2018 +0000"
      },
      "message": "Merge \"ART-tests: Remove DX-dependency from 551-checker-shifter-operand\""
    },
    {
      "commit": "18e2687c4126d66870d61d6548abc2c7661a66cc",
      "tree": "06eff605df9259dde8170c8efb48b11df4108eb3",
      "parents": [
        "2607d6c47114a18ccf4a532b20e1099d1dd8fcca"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Jun 04 17:19:02 2018 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jun 07 22:13:48 2018 -0700"
      },
      "message": "Refactor ClassAccessor to use an index instead of ClassDef pointer\n\nRemoves a separate class_def_idx being required for getting the index\nof a ClassAccessor foreach loop.\n\nBug: 79758018\nTest: test-art-host-gtest\n\nChange-Id: Ie3010a17669f24cf492c678b55bdddba7ec62ea8\n"
    },
    {
      "commit": "803a8d73f1c8b3f331e2bbf2aba037f6c93d18dc",
      "tree": "07ebf1fc2bb14861da0aa557d534e9074225eabd",
      "parents": [
        "342e59c5a06b2eb449ae7ede3255e71a4464afaa",
        "9cb13a66863411e6e885fd387d7908844270f42f"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jun 07 23:59:45 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 07 23:59:45 2018 +0000"
      },
      "message": "Merge \"Add debugging for b/62653020\""
    },
    {
      "commit": "342e59c5a06b2eb449ae7ede3255e71a4464afaa",
      "tree": "546800e4d31a5bc08432174b5e72846b160f414f",
      "parents": [
        "204078a26a18e398d6fcda78ce4c36dc2b53e780",
        "1b930cafa1c7e8f74f20d72ff1d0ff0c0fb6a875"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jun 07 20:31:22 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 07 20:31:22 2018 +0000"
      },
      "message": "Merge \"Follow rename from removing desugar support\""
    },
    {
      "commit": "204078a26a18e398d6fcda78ce4c36dc2b53e780",
      "tree": "875af7d465c2f9278c9da3576ce1c86780477c2a",
      "parents": [
        "693c6d609fe2eb3c5cf4259dc770a5e6bfc93b7b",
        "7b39a39258311ad6c3da5934746a186c185c3f4f"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Jun 07 20:14:37 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 07 20:14:37 2018 +0000"
      },
      "message": "Merge \"Revert^2 \"Make adbconnection start automatically for debuggable apps (on target)\"\""
    },
    {
      "commit": "9cb13a66863411e6e885fd387d7908844270f42f",
      "tree": "944bdc205adc5cdb7662a3a8aa36e2d4f16d3695",
      "parents": [
        "693c6d609fe2eb3c5cf4259dc770a5e6bfc93b7b"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Jun 07 13:02:02 2018 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Jun 07 20:08:10 2018 +0000"
      },
      "message": "Add debugging for b/62653020\n\nWe are seeing errors reading out/soong/build.ninja when running\nART tests.  Add a hack to copy out/soong/build.ninja to DIST_DIR\non failure so we can see the contents.\n\nTest: Manually corrupt build.ninja, run testrunner.py with and without\n      DIST_DIR set.\nBug: 62653020\n\nChange-Id: I6d83b87d56b6787a98fec8b244f224d44cb85bc1\n"
    },
    {
      "commit": "693c6d609fe2eb3c5cf4259dc770a5e6bfc93b7b",
      "tree": "9cf78843fcb97d9b3a155e09dbddc12ac22eaf31",
      "parents": [
        "eb2557e74abf1830995cea287a9b03a8c0aa9b8b",
        "d80668611e1982d50374da03377542a7863ba8e5"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Jun 07 18:28:32 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 07 18:28:32 2018 +0000"
      },
      "message": "Merge \"Add Throwable.UNASSIGNED_STACK to well known fields\""
    },
    {
      "commit": "7b39a39258311ad6c3da5934746a186c185c3f4f",
      "tree": "754ff7de04f56baa11e0185d549ddfc5af42f1fb",
      "parents": [
        "dc53f1616d656a757fb26039f387b7ee44ff2f1d"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Jun 06 14:18:24 2018 +0000"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Jun 07 11:24:36 2018 -0700"
      },
      "message": "Revert^2 \"Make adbconnection start automatically for debuggable apps (on target)\"\n\nThis reverts commit b2926c0cdbd30af7529b90fe20b24010f844ccc1.\n\nWe were trying to start with adbconnection but that was not always\navailable on devices. This could cause tests to fail.\n\nBug: 109505014\nReason for revert: Fixed issue causing target tests to sometimes fail.\nTest: ./test.py --target\n\nChange-Id: I0bb9cd2dce87145a8a9c372e2f015e36a3276369\n"
    },
    {
      "commit": "4459baee5d3042310cd2de94b7801f90ccf2504b",
      "tree": "08463200b021d2861b3ffa09f1b5340af916c3fc",
      "parents": [
        "c30acf7f00bc69ca5063c0daeb149f2f3a796de8"
      ],
      "author": {
        "name": "Tamas Kenez",
        "email": "tamaskenez@google.com",
        "time": "Thu Jun 07 16:42:59 2018 +0200"
      },
      "committer": {
        "name": "Tamas Kenez",
        "email": "tamaskenez@google.com",
        "time": "Thu Jun 07 14:48:16 2018 +0000"
      },
      "message": "ART-tests: Remove DX-dependency from 551-checker-shifter-operand\n\nThe merging of shift and add operations into DataProcWithShifterOp\nin the test case $opt$validateShiftLongAsserts was dependent on\nregister-allocation patterns. With D8 sometimes the merge did not\ntake place because the result of the shift was not overwritten by\nthe subsequent add.\n\nThis CL separates the intermittent method calls and the arithmetic\noperations so the environmental uses of the shift result does not\nblock merging. Also, D8 is enabled.\n\nTest: art/test.py -r -b --target -t 551-checker-shifter-operand\n      Tested locally with --host and --gcstress.\n\nBug: 65168732\nChange-Id: I3a8e71f3530211878879faae068acb7c7957ae19\n"
    },
    {
      "commit": "d80668611e1982d50374da03377542a7863ba8e5",
      "tree": "9cf78843fcb97d9b3a155e09dbddc12ac22eaf31",
      "parents": [
        "eb2557e74abf1830995cea287a9b03a8c0aa9b8b"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Jun 07 15:08:04 2018 +0100"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Jun 07 15:16:29 2018 +0100"
      },
      "message": "Add Throwable.UNASSIGNED_STACK to well known fields\n\nReplaces use of EmptyArray.STACK_TRACE_ELEMENT with\nThrowable.UNSASSIGNED_STACK to match changes in Java code.\n\nBug: 35910877\nTest: make checkbuild and run CtsLibcoreTestCases\nChange-Id: Idc14ce8610ec12ce776d87befdbb9a3cbfd9dbee\n"
    },
    {
      "commit": "87547c967d58a465737375af0b5847d1085da6d3",
      "tree": "29cfd980da180d8f451821871c72c7c8ca9b3a2b",
      "parents": [
        "c30acf7f00bc69ca5063c0daeb149f2f3a796de8"
      ],
      "author": {
        "name": "Tamas Kenez",
        "email": "tamaskenez@google.com",
        "time": "Thu Jun 07 15:39:59 2018 +0200"
      },
      "committer": {
        "name": "Tamas Kenez",
        "email": "tamaskenez@google.com",
        "time": "Thu Jun 07 13:44:34 2018 +0000"
      },
      "message": "ART-tests: Remove DX-dependency from 565-checker-doublenegbitwise\n\nThis test depended on DX code patterns like using xor-~0 instead of\nbitwise-not. The CL moves all java code to Smali and enables D8.\n\nSince all the test cases in the Java source had already existed as\nSmali test, too (with slightly different checks and different code\nthen generated by DX) the names of the test cases moved from the Java\nsource has been appended with \u0027V2\u0027.\n\nTest: art/test.py -b --host -r -t 565-checker-doublenegbitwise\n      Tested locally with --target and --gcstress.\n\nBug: 65168732\nChange-Id: I2e392c25f7a065a9dccd389866c63481c05eb501\n"
    },
    {
      "commit": "f75613cb7c5cda6a4603ab7041d6f98ec62a80cd",
      "tree": "5d253108db708da20e0bbf55a5f3d8e2f8bce4d7",
      "parents": [
        "2b40dd35c65ad644d448611750f5b577e97594a1"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Jun 05 12:51:04 2018 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Jun 07 14:24:02 2018 +0100"
      },
      "message": "Keep objects for Integer.valueOf() intrinsic alive.\n\nKeep boot image objects referenced by the intrinsic alive\nthrough boot image roots, so that they can never be dead as\nthe intrinsic would still be able to resurrect them later.\n\nNote that currently the GC considers all boot image objects\nlive forever. That risks leaking memory and should be fixed.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 71526895\nChange-Id: Iec25cc27e9c5c4bd3c5711991e3111bfb19ef182\n"
    },
    {
      "commit": "eb2557e74abf1830995cea287a9b03a8c0aa9b8b",
      "tree": "ea007db13f31492cab58adea297422b361e8af24",
      "parents": [
        "2b40dd35c65ad644d448611750f5b577e97594a1",
        "6de8833fb64e59301eada4005ed04da995796170"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Jun 07 13:18:33 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 07 13:18:33 2018 +0000"
      },
      "message": "Merge \"Delta-compress register maps in stack maps.\""
    },
    {
      "commit": "fd89b0739d4000ea70f28bf53dea531027024f5a",
      "tree": "1c9f3e1b046d60df405fb63f04cf83d3be4ff0f5",
      "parents": [
        "6de8833fb64e59301eada4005ed04da995796170"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sun Jun 03 12:00:22 2018 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Jun 07 12:00:18 2018 +0100"
      },
      "message": "Remove unused GetDexRegisterMap arguments.\n\nThey are no longer needed in the new encoding.\n\nI reuse the local variables in most places to DCHECK the size\nof the decoded register map.  This has one catch though:\nWe sometimes omit all dex registers, so the DCHECK should be\ndone only after checking if the map is empty (if applicable).\n\nTest: test-art-host-gtest-stack_map_test\nChange-Id: I94b67029842374bc8eb7c9e5eac76fc93a651f24\n"
    },
    {
      "commit": "6de8833fb64e59301eada4005ed04da995796170",
      "tree": "9f5b731ae1c0428cf5dcae4105936a7a165a43c9",
      "parents": [
        "d97e0828958fd14a962e37af2865bc2e628547ce"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sun Jun 03 12:00:11 2018 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Jun 07 12:00:18 2018 +0100"
      },
      "message": "Delta-compress register maps in stack maps.\n\nThe register maps tend to be similar from stack map to stack map,\nso instead of encoding them again, store only the modified ones.\n\nThe dex register bitmap stores the delta now - if register has\nbeen modified since the previous stack map, the bit will be set.\n\nThe decoding logic scans backwards through stack maps until it\neventfully finds the most recent value of each register.\n\nThis CL saves ~2.5% of .oat file size (~10% of stackmap size).\n\nDue to the scan, this makes dex register decoding slower by factor\nof 2.5, but that still beats the old algorithm before refactoring.\n\nTest: test-art-host-gtest-stack_map_test\nChange-Id: Id5217a329eb757954e0c9447f38b05ec34118f84\n"
    },
    {
      "commit": "1b930cafa1c7e8f74f20d72ff1d0ff0c0fb6a875",
      "tree": "908a6b3f883ad83783510b9a76f43f23b63fe399",
      "parents": [
        "dc53f1616d656a757fb26039f387b7ee44ff2f1d"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Jun 06 14:46:43 2018 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Jun 06 14:46:43 2018 -0700"
      },
      "message": "Follow rename from removing desugar support\n\nWe always use d8 now, follow the rename of\ntransform-classes-d8.jar-to-dex to\ntransform-classes.jar-to-dex.\n\nTest: m out/host/linux-x86/obj/PACKAGING/veridex_intermediates/veridex.zip\nChange-Id: I84a36db0f7d04030f6f56929fccfa685519d51a7\n"
    },
    {
      "commit": "2b40dd35c65ad644d448611750f5b577e97594a1",
      "tree": "80887a473fde5d60c0b835969dc688c4468f690c",
      "parents": [
        "2607d6c47114a18ccf4a532b20e1099d1dd8fcca",
        "3362d224c7f8db721d9fa60f8002cb221638a224"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jun 06 21:04:12 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 06 21:04:12 2018 +0000"
      },
      "message": "Merge \"ART: Run ExceptionDescribe on error\""
    },
    {
      "commit": "2607d6c47114a18ccf4a532b20e1099d1dd8fcca",
      "tree": "bd9de57048d59c594f98195a4029f887df2b6379",
      "parents": [
        "dc53f1616d656a757fb26039f387b7ee44ff2f1d",
        "23ae5322a4e53d0fbe3ea514ec1a6941de472067"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jun 06 17:56:26 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 06 17:56:26 2018 +0000"
      },
      "message": "Merge \"Fix patchoat_test for heap poisoning\""
    },
    {
      "commit": "23ae5322a4e53d0fbe3ea514ec1a6941de472067",
      "tree": "60b75426b0b03efc95e0c9824151ec18b392db60",
      "parents": [
        "b16e4a3c7563f83df0d6fd10c0aa4f1d36be8079"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Jun 06 16:02:21 2018 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Jun 06 16:15:47 2018 +0000"
      },
      "message": "Fix patchoat_test for heap poisoning\n\nThe test was disabled for heap poisoning; keep it disabled.\n\nThe TEST_DISABLED_FOR_HEAP_POISONING macro is in fact just\na conditional return, and I didn\u0027t account for it properly.\n\nBug: 109677607\nTest: test-art-host-gtest-patchoat_test ART_HEAP_POISONING\u003dtrue\nChange-Id: I40266d0a06102e4d8bc52357b884b0e7d9fd2630\n"
    },
    {
      "commit": "dc53f1616d656a757fb26039f387b7ee44ff2f1d",
      "tree": "e334f68df51c6078fd51f293a38146c6fcb6c106",
      "parents": [
        "f98a25083c71c2f26d8487142aa02fabcd023080",
        "d97e0828958fd14a962e37af2865bc2e628547ce"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jun 06 15:00:44 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 06 15:00:44 2018 +0000"
      },
      "message": "Merge \"Reduce code repetition in stack maps with macros.\""
    },
    {
      "commit": "f98a25083c71c2f26d8487142aa02fabcd023080",
      "tree": "116713e6b77668bf9fbc915ec9831d33cad32579",
      "parents": [
        "428d80e3a49f732b39bb0c71cfde26451e3fdf4d",
        "b16e4a3c7563f83df0d6fd10c0aa4f1d36be8079"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jun 06 13:39:50 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 06 13:39:50 2018 +0000"
      },
      "message": "Merge \"Add check to CheckImageIdenticalToOriginalExceptForRelocation\""
    },
    {
      "commit": "d97e0828958fd14a962e37af2865bc2e628547ce",
      "tree": "bcb4ef65fee75cd64c222a2e3bfb44da6b60ebd5",
      "parents": [
        "6e69e52a12883386f91d014324bebee867ca7877"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sun Jun 03 12:00:24 2018 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Jun 06 13:14:04 2018 +0100"
      },
      "message": "Reduce code repetition in stack maps with macros.\n\nSimplifies the code somewhat.  It also makes it possible\nto get column names as strings for the debugging code.\n\nTest: test-art-host-gtest-stack_map_test\nChange-Id: I1a2e146e7a4372c0752693313e1b881cb4a818bc\n"
    },
    {
      "commit": "b16e4a3c7563f83df0d6fd10c0aa4f1d36be8079",
      "tree": "70de3e001d3da8904bc1983037495ae1f36ef16e",
      "parents": [
        "0366f3251c3078a0161d178e3b0afd5efc4c84c0"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Jun 05 13:20:48 2018 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Jun 06 12:39:35 2018 +0100"
      },
      "message": "Add check to CheckImageIdenticalToOriginalExceptForRelocation\n\nAdd defensive check which fails gracefully if the\nrelocation offset is larger than the image size.\n\nAdd tests.\n\nBug: 109677607\nTest: test-art-host-gtest-patchoat_test SANITIZE_HOST\u003daddress\nChange-Id: Ic989d5b7c77fd66e77b9e8ba90df1bf490a46e43\n"
    },
    {
      "commit": "428d80e3a49f732b39bb0c71cfde26451e3fdf4d",
      "tree": "e1cdec634453345d85f9bea82acefc898ab343bb",
      "parents": [
        "9c3965f30236cd233bf1e0a44e7a66b305efde95",
        "75c6fcac1e31ffc7fa59fdea1ddf04c4e7e870d1"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Wed Jun 06 09:47:32 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 06 09:47:32 2018 +0000"
      },
      "message": "Merge \"Ignore comment lines in proguard mapping.\""
    },
    {
      "commit": "9c3965f30236cd233bf1e0a44e7a66b305efde95",
      "tree": "8f48ba4b7254b42061b020c930b4a89384008cd4",
      "parents": [
        "7bdc591cc1deef132254ce662d6f61909800d4c3",
        "b2926c0cdbd30af7529b90fe20b24010f844ccc1"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jun 06 07:37:02 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 06 07:37:02 2018 +0000"
      },
      "message": "Merge \"Revert \"Make adbconnection start automatically for debuggable apps (on target)\"\""
    },
    {
      "commit": "7bdc591cc1deef132254ce662d6f61909800d4c3",
      "tree": "2ba5b191c5cdcb0b742c50de2a4e3292a8b5b73a",
      "parents": [
        "f51359edab8cd1a77677e68f0f2b56dc0f5d2561",
        "ed4ee4474b0f34d70ebb362eaa4be4ae9bca7f8e"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jun 06 06:47:41 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 06 06:47:41 2018 +0000"
      },
      "message": "Merge \"Remove unnecessary thread suspension\""
    },
    {
      "commit": "b2926c0cdbd30af7529b90fe20b24010f844ccc1",
      "tree": "3a6d17746e17213a04368d6140d246063f2316b2",
      "parents": [
        "5af3f503f3ad5a24dc1acac3070f7dcda4b6593d"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 06 05:49:44 2018 +0000"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 06 05:49:44 2018 +0000"
      },
      "message": "Revert \"Make adbconnection start automatically for debuggable apps (on target)\"\n\nThis reverts commit 5af3f503f3ad5a24dc1acac3070f7dcda4b6593d.\n\nReason for revert: Breaks target tests\n\nBug: 109505014\nChange-Id: I43877a11c615637a152954e0c0d0b2b0f18bcc9e\nTest: none\n"
    },
    {
      "commit": "f51359edab8cd1a77677e68f0f2b56dc0f5d2561",
      "tree": "8b03fb414afac9cac2746eaaac9cd3330f1c097b",
      "parents": [
        "a13ec547911bb33d05955d9d6f336f550c8d9c10",
        "6e69e52a12883386f91d014324bebee867ca7877"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jun 06 00:24:22 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 06 00:24:22 2018 +0000"
      },
      "message": "Merge \"Remove depth argument from InlineInfo accessors in stack maps.\""
    },
    {
      "commit": "3362d224c7f8db721d9fa60f8002cb221638a224",
      "tree": "5d18021d9c283ba527f1f475006648d4c5948809",
      "parents": [
        "a13ec547911bb33d05955d9d6f336f550c8d9c10"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jun 05 16:02:10 2018 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jun 05 16:02:10 2018 -0700"
      },
      "message": "ART: Run ExceptionDescribe on error\n\nWhen a classloader cannot be printed, print the exception.\n\nBug: 109724219\nTest: m test-art-host\nChange-Id: I32fbd241cb247a0e4cbe8f13a6120a8aa736995a\n"
    },
    {
      "commit": "ed4ee4474b0f34d70ebb362eaa4be4ae9bca7f8e",
      "tree": "f78fb90eef013c07938160f2ca7af793bbd00d55",
      "parents": [
        "a13ec547911bb33d05955d9d6f336f550c8d9c10"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Jun 05 14:23:35 2018 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Jun 05 15:44:49 2018 -0700"
      },
      "message": "Remove unnecessary thread suspension\n\nRemoved unnecessary thread suspension since it\u0027s already done by\nScopedGCCriticalSection. This also fixes the access of handles\nwithout holding the mutator lock.\n\nAdded scoped traces to RegisterDexFile to help detect any delays\ncaused by blocking on GC from the ScopedGCCriticalSection.\n\nBug: 109720594\nTest: test-art-host\n\nChange-Id: I0bc7402eca7c8bff92d3522ccd30ca802bca2863\n"
    },
    {
      "commit": "a13ec547911bb33d05955d9d6f336f550c8d9c10",
      "tree": "a193bc8861e4a0594647302da7d6d74e9e9701b2",
      "parents": [
        "ecf98d5ef4c58bc860478f5bbfcdd7dac64f6148",
        "2b69b9c65730638dd67d4376a7aee05a37e41198"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Jun 05 21:08:14 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 05 21:08:14 2018 +0000"
      },
      "message": "Merge \"Fix deadlock between ConcurrentCopying and thread holding dex_lock exclusively\""
    },
    {
      "commit": "ecf98d5ef4c58bc860478f5bbfcdd7dac64f6148",
      "tree": "00a067a03a3d667cf9a2c4331d4b7d679bc6c189",
      "parents": [
        "1fdd8d899efb2d00ac859318ad150369c30f87c2",
        "5af3f503f3ad5a24dc1acac3070f7dcda4b6593d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 05 19:41:30 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 05 19:41:30 2018 +0000"
      },
      "message": "Merge \"Make adbconnection start automatically for debuggable apps (on target)\""
    },
    {
      "commit": "2b69b9c65730638dd67d4376a7aee05a37e41198",
      "tree": "e4bdff5a4697cf77d550a3c4ecbbddbb1af1a916",
      "parents": [
        "197f1ef6f4f2411d011d7e8f696775c3fbcffd86"
      ],
      "author": {
        "name": "Ivan Maidanski",
        "email": "i.maidanski@samsung.com",
        "time": "Mon May 14 13:50:48 2018 +0300"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Jun 05 19:04:14 2018 +0000"
      },
      "message": "Fix deadlock between ConcurrentCopying and thread holding dex_lock exclusively\n\nSimilar to the issue addressed by\nhttps://android-review.googlesource.com/628465, we observe a deadlock\nbetween\n\n- a thread executing ConcurrentCopying::RevokeThreadLocalMarkStacks\n  which has disabled weak references access and waiting for check_point\n  barrier;\n- a thread which had acquired the mutator lock exclusively and was blocking\n  on a condition variable regarding weak references access; and\n- a thread which cannot execute the checkpoint until it acquires the\n  dex_lock.\n\nThis change prevents garbage collection from occurring when dex_lock is held\nexclusively.\n\nBug: 109720594\nTest: m test-art-host\nChange-Id: I7a7e8e20aada4a9fad344b2f2f45a233639cda14\n"
    },
    {
      "commit": "5af3f503f3ad5a24dc1acac3070f7dcda4b6593d",
      "tree": "76c3ca01e088b0fd8d1a863dc58ce4a7e22d3a76",
      "parents": [
        "5ebdc88a8469cb2bb9188c18b379ca486d338728"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Jun 04 16:17:56 2018 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Jun 05 09:35:54 2018 -0700"
      },
      "message": "Make adbconnection start automatically for debuggable apps (on target)\n\nWith wrap.sh it is required that apps that wish to be debuggable\ndeclare that explicitly by adding the \u0027-Xcompiler-option --debuggable\u0027\noptions. When we switched to the new debugger implementation we\naccidentally added a requirement that you pass\n-XjdwpProvider:adbconnection. This removes that requirement and\nreturns to the earlier state.\n\nBug: 109505014\nTest: Build program with wrap.sh that adds -Xcompiler-option --debuggable\n      Attach debugger to program.\nChange-Id: I9416ed3b156776439f5bfec032fee3f11fe4eb3c\n"
    },
    {
      "commit": "1fdd8d899efb2d00ac859318ad150369c30f87c2",
      "tree": "4e868b60b67dfa4cf38af40f0541bad1a7b977f9",
      "parents": [
        "8d97f400f5addaa52f66b804bf031e1005bab3d4",
        "3a0eef03bc02b6e74db8f795cd9fc85164ec133d"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Jun 05 16:30:11 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 05 16:30:11 2018 +0000"
      },
      "message": "Merge \"Run debuggable tests on art-jit\""
    },
    {
      "commit": "6e69e52a12883386f91d014324bebee867ca7877",
      "tree": "7d1850f0a59e4ea2d013d6d479cd616b66922970",
      "parents": [
        "6eb4d5e4bc2ce068004c1d7c85dbfff0c5efd11d"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sun Jun 03 12:00:14 2018 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Jun 05 16:50:38 2018 +0100"
      },
      "message": "Remove depth argument from InlineInfo accessors in stack maps.\n\nThe InlineInfo class actually represented a list of inlining\ninformation for a given stack map, and the depth argument was\nused everywhere to select to desired element from the list.\nThis was verbose and inconsistent with the other classes.\n\nChange the InlineInfo class to represent a single inlining,\nand select the desired depth when getting it from CodeInfo.\n\nTest: test-art-host-gtest-stack_map_test\nChange-Id: I35b73e6704854f0203f51d4dbdbed5b1d1cd5a3b\n"
    },
    {
      "commit": "8d97f400f5addaa52f66b804bf031e1005bab3d4",
      "tree": "29370726ecaaeaa089e92becea7b1b86755a03c5",
      "parents": [
        "302aa98f75213c749c9632a503a77011946b41de",
        "6eb4d5e4bc2ce068004c1d7c85dbfff0c5efd11d"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Jun 05 15:49:17 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 05 15:49:17 2018 +0000"
      },
      "message": "Merge \"De-duplicate inline info in stack maps.\""
    },
    {
      "commit": "302aa98f75213c749c9632a503a77011946b41de",
      "tree": "5dc5f40e5eb509810a3a11fcc1536e2f46390292",
      "parents": [
        "75aed5d2a141fbc3b6dc3d285ffd3ed9d7261217",
        "c13fbd8596988f1daf71197008007c2eaa380585"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Jun 05 14:04:13 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 05 14:04:13 2018 +0000"
      },
      "message": "Merge changes I2079344d,Ie0d08494\n\n* changes:\n  Use pre-allocated Throwables from the boot image.\n  Remove ClassLinker::array_iftable_.\n"
    },
    {
      "commit": "75aed5d2a141fbc3b6dc3d285ffd3ed9d7261217",
      "tree": "72c7a4e57b41883784400d5b934f0bb97a76f5b8",
      "parents": [
        "fa304bd02dca606a9ab79a25d053ed897957cc3b",
        "ea341d2830298b666d7c6faf369d2fc3fe94fef8"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Jun 05 09:14:58 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 05 09:14:58 2018 +0000"
      },
      "message": "Merge \"Rewrite TypeLookupTable.\""
    },
    {
      "commit": "fa304bd02dca606a9ab79a25d053ed897957cc3b",
      "tree": "d141ddb982b43614d7c28a6192c05118974eea5c",
      "parents": [
        "52bca80eb968231c1a2dafb72ab2f0436815c1c7",
        "5ebdc88a8469cb2bb9188c18b379ca486d338728"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 05 01:57:36 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 05 01:57:36 2018 +0000"
      },
      "message": "Merge \"Add missing \u0027,\u0027 in default jdwp argument list\""
    },
    {
      "commit": "5ebdc88a8469cb2bb9188c18b379ca486d338728",
      "tree": "3a6d17746e17213a04368d6140d246063f2316b2",
      "parents": [
        "54f535a3b43186727ff84fb4d604f6c57473d8ce"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Jun 04 16:42:30 2018 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Jun 04 16:45:06 2018 -0700"
      },
      "message": "Add missing \u0027,\u0027 in default jdwp argument list\n\nWe were incorrectly missing a \u0027,\u0027 in the default jdwp argument list.\nThis meant that a manual -XjdwpProvider:adbconnection will fail due to\nfailing to parse the argument string.\n\nTest: run app with wrap.sh that adds  \u0027-XjdwpProvider:adbconnection -Xcompiler-option --debuggable\u0027\n      Attach debugger\nBug: 109505014\n\nChange-Id: Id09e04cd92c2f89a4bcdf95b05071bacd509b286\n"
    },
    {
      "commit": "52bca80eb968231c1a2dafb72ab2f0436815c1c7",
      "tree": "bcede885387921a8c87543365b2657aaf12d4070",
      "parents": [
        "91b42b0014a369eac30ee694f8c55be5acbc59bf",
        "54f535a3b43186727ff84fb4d604f6c57473d8ce"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jun 04 23:21:41 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 04 23:21:41 2018 +0000"
      },
      "message": "Merge \"Pass SOCK_CLOEXEC to adb socket.\""
    },
    {
      "commit": "91b42b0014a369eac30ee694f8c55be5acbc59bf",
      "tree": "1aaf1b1ea86565560e1c9d116cbca5a5ae2b6dfc",
      "parents": [
        "6ed28cb9e6a79230d567dbadc0e0e278943b93d1",
        "48de723721a9103bc3374c00f1e18ee7dcaea49a"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Jun 04 21:25:42 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 04 21:25:42 2018 +0000"
      },
      "message": "Merge \"Refactor experiments to allow multidex analysis\""
    },
    {
      "commit": "6ed28cb9e6a79230d567dbadc0e0e278943b93d1",
      "tree": "c5e07041722cf9ab3bfb1879691ca072bb670950",
      "parents": [
        "3f89c2ddca49ee28f738055e2856ad9fdc92b956",
        "1f1cb9f2f0945dbcf6b79d0795b035233dfd9131"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Jun 04 21:25:15 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 04 21:25:15 2018 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Move runtime/ to ClassAccessor\"\"\""
    },
    {
      "commit": "54f535a3b43186727ff84fb4d604f6c57473d8ce",
      "tree": "623ba6af36ce230ed2484f66d3fe8c3a03c59682",
      "parents": [
        "ebf5902272613d8bb563ae312ec5ce2580a59bb7"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Jun 04 14:14:19 2018 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Jun 04 14:23:48 2018 -0700"
      },
      "message": "Pass SOCK_CLOEXEC to adb socket.\n\nWe were not passing CLOEXEC to the adb-socket in adbconnection. This\ncould lead to extra (unusable) jdwp PIDs in adb jdwp in some\ncircumstances.\n\nTest: Build an app with wrap.sh.\n      adb jdwp on a userdebug device.\n      Ensure pid of wrap.sh is not present in list.\nBug: 109505014\n\nChange-Id: Icd41bf037666d6abe35897681aed98b00fb290ac\n"
    },
    {
      "commit": "1f1cb9f2f0945dbcf6b79d0795b035233dfd9131",
      "tree": "fc5f72ef884e0eaa92f515a90cfd997b0938208a",
      "parents": [
        "9ddef18ae95859a985e7a0de7e22999fcbc28e07"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Jun 04 09:22:46 2018 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Jun 04 20:41:12 2018 +0000"
      },
      "message": "Revert \"Revert \"Move runtime/ to ClassAccessor\"\"\n\nFixed misplaced UnhideAccessFlags to be outside of a conditional\nthat the code item is null / not deduped. This fixes an issue\nwhere these methods would not have had their access flags restored.\n\nBug: 77709234\nBug: 79758018\nBug: 91962648\n\nThis reverts commit cc7e20f9ec7b4a7a57f7196e5e8be67a727f21d3.\n\nTest: test-art-host\nTest: atest FrameworksUiServicesTests\nTest: atest CtsInlineMockingTestCases\n\nChange-Id: I7e5712cdcccef81e19ce81d26743c517b0b8a67d\n"
    },
    {
      "commit": "3f89c2ddca49ee28f738055e2856ad9fdc92b956",
      "tree": "d652798cab0573be44e699a9f17c07434e610945",
      "parents": [
        "37ee471e8245f8ab643cb123cbb59a475d16a14d",
        "03004e66495ba4dff81c1d49522b79e95a829af7"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jun 04 19:49:54 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 04 19:49:54 2018 +0000"
      },
      "message": "Merge \"Remove unused native implementation of Object.wait()\""
    },
    {
      "commit": "c13fbd8596988f1daf71197008007c2eaa380585",
      "tree": "4c02277989abc7ac1081698269504ab329ddab8f",
      "parents": [
        "026105570d8fcd4b3cb60c3d6b7bb7141cd8146c"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jun 04 16:16:28 2018 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jun 04 18:33:38 2018 +0100"
      },
      "message": "Use pre-allocated Throwables from the boot image.\n\nThe pre-allocated OOMEs and NoClassDefFoundError were stored\nin the boot image but they were not used, we instead used to\nallocate and use new objects. This change adds references to\nthe image roots, so that these Throwables can be used when\nstarting the runtime using the boot image.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 77947463\nChange-Id: I2079344dee61242bf0bef5c32770c33ac8a6b7a4\n"
    },
    {
      "commit": "37ee471e8245f8ab643cb123cbb59a475d16a14d",
      "tree": "14f0e1850d9ebcb681f4ec926ce07cff74a2680b",
      "parents": [
        "0832698068cfcc8a45b119406f83b290e6f05cdd",
        "18090d118bfb04620aeef719e2d7780c26298bf8"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jun 04 17:01:09 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 04 17:01:09 2018 +0000"
      },
      "message": "Merge \"Refactor String resolution.\""
    },
    {
      "commit": "026105570d8fcd4b3cb60c3d6b7bb7141cd8146c",
      "tree": "4492865b9925d20b2f8ae31675fa791cc1d404c5",
      "parents": [
        "18090d118bfb04620aeef719e2d7780c26298bf8"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jun 04 14:38:00 2018 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jun 04 17:55:47 2018 +0100"
      },
      "message": "Remove ClassLinker::array_iftable_.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nChange-Id: Ie0d084945757ec8fcbaa5d02bbc24288f649bac7\n"
    },
    {
      "commit": "0832698068cfcc8a45b119406f83b290e6f05cdd",
      "tree": "1b6bfe45aba4c8e7d8255a0d1423cb22d03ad6b3",
      "parents": [
        "9ddef18ae95859a985e7a0de7e22999fcbc28e07",
        "5816d63bca0a4e0522e06e044e516cdc32993c39"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jun 04 16:53:46 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 04 16:53:46 2018 +0000"
      },
      "message": "Merge \"Remove special support for D8 in 911-get-stack-trace\""
    },
    {
      "commit": "18090d118bfb04620aeef719e2d7780c26298bf8",
      "tree": "040e5195f0278c9bc846d5543c0e36771ffc5b48",
      "parents": [
        "9ddef18ae95859a985e7a0de7e22999fcbc28e07"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Jun 01 16:53:12 2018 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jun 04 17:52:35 2018 +0100"
      },
      "message": "Refactor String resolution.\n\nUse the same pattern as type resolution and avoid some\nunnecessary read barriers in the fast path. Consolidate\nnaming between ArtField and ArtMethod.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host\nChange-Id: Iea69129085f61f04a4add09edd0eadbb7ac9ecb2\n"
    },
    {
      "commit": "03004e66495ba4dff81c1d49522b79e95a829af7",
      "tree": "b50797c42e9555ca04a131aeaca77657c86e64d0",
      "parents": [
        "5816d63bca0a4e0522e06e044e516cdc32993c39"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed May 23 11:52:10 2018 +0100"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Mon Jun 04 16:14:54 2018 +0100"
      },
      "message": "Remove unused native implementation of Object.wait()\n\nAs part of the process of verifying Java files against 8u121-b13 the\nObject.wait() method has been changed from a native method to a pure\nJava implementation. This removes the unused native implementation\nmethod and the supporting method in mirror::Object.\n\nUpdated the 911-get-stack-trace test to handle the two extra stack\nelements added by this change.\n\nBug: 74379469\nTest: make checkbuild, flash\nChange-Id: Ifbc4612f7d949416d8c703628fa8cafaa296c350\n"
    },
    {
      "commit": "5816d63bca0a4e0522e06e044e516cdc32993c39",
      "tree": "1b6bfe45aba4c8e7d8255a0d1423cb22d03ad6b3",
      "parents": [
        "9ddef18ae95859a985e7a0de7e22999fcbc28e07"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed May 30 12:03:54 2018 +0100"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Mon Jun 04 16:14:54 2018 +0100"
      },
      "message": "Remove special support for D8 in 911-get-stack-trace\n\nThis test produced slightly different output when run using D8 compared\nwith DX. As D8 is the default and DX is no longer used this removes the\nspecial support for D8 and updates the expected output to match.\n\nTest: art/test/testrunner/testrunner.py\nChange-Id: Icd1f4e547c13bf6641202ac086d567895e1b83a4\n"
    },
    {
      "commit": "75c6fcac1e31ffc7fa59fdea1ddf04c4e7e870d1",
      "tree": "e7a1335e6c3ba0cf0550774e2d1e599500a956c8",
      "parents": [
        "9ddef18ae95859a985e7a0de7e22999fcbc28e07"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Mon Jun 04 15:44:17 2018 +0100"
      },
      "committer": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Mon Jun 04 15:47:23 2018 +0100"
      },
      "message": "Ignore comment lines in proguard mapping.\n\nComment lines are now being generated by R8 in the proguard mapping.\nUpdate the proguard mapping parser to handle those. Fixes the ahat test\nfailure:\n\n1) diffMatchedHeap(com.android.ahat.DiffTest)\njava.io.IOException: Unable to load proguard map\n  at com.android.ahat.TestDump.load(TestDump.java:116)\n  at com.android.ahat.TestDump.getTestDump(TestDump.java:269)\n  at com.android.ahat.TestDump.getTestDump(TestDump.java:241)\n  at com.android.ahat.DiffTest.diffMatchedHeap(DiffTest.java:32)\n  ...\nCaused by: java.text.ParseException: Error parsing class line: \u0027# compiler: R8\u0027\n  at com.android.ahat.proguard.ProguardMap.parseException(ProguardMap.java:142)\n  at com.android.ahat.proguard.ProguardMap.readFromReader(ProguardMap.java:191)\n  at com.android.ahat.TestDump.load(TestDump.java:114)\n  ... 33 more\n\nChange-Id: I70c9deb414086f454a1f3fefd3bace5b78953b44\nTest: m ahat-test\n"
    },
    {
      "commit": "ea341d2830298b666d7c6faf369d2fc3fe94fef8",
      "tree": "ae20b9be257fcd1bcef71698ed06307c2932cced",
      "parents": [
        "9ddef18ae95859a985e7a0de7e22999fcbc28e07"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri May 11 10:33:37 2018 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jun 04 13:06:42 2018 +0100"
      },
      "message": "Rewrite TypeLookupTable.\n\nImprove bit-packing of the data to store twice as many bits\nof the hash as previously. Check for bucket mismatch after\nthe first partial hash conflict (previous comments alluded\nto the bucket check but it was not implemented).\n\nAvoid an unnecessary unique_ptr\u003c\u003e indirection by making the\nTypeLookupTable moveable.\n\nTest: Rely on Treehugger.\nBug: 79514364\nChange-Id: I9fa6f712b037a6e6904d09c88670966486f56621\n"
    },
    {
      "commit": "9ddef18ae95859a985e7a0de7e22999fcbc28e07",
      "tree": "ff38945fc61f1e32717a18b0a6901c5d11c33ccb",
      "parents": [
        "0366f3251c3078a0161d178e3b0afd5efc4c84c0",
        "bcf175247272d0e321c8d988c3c01c123b56e36e"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jun 04 09:14:42 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 04 09:14:42 2018 +0000"
      },
      "message": "Merge \"ObjPtr\u003c\u003e-ify array allocations.\""
    },
    {
      "commit": "6eb4d5e4bc2ce068004c1d7c85dbfff0c5efd11d",
      "tree": "e2d8a213a4996d94988af748175d3eb5b7694f33",
      "parents": [
        "0366f3251c3078a0161d178e3b0afd5efc4c84c0"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sun Jun 03 12:00:20 2018 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sun Jun 03 12:00:20 2018 +0100"
      },
      "message": "De-duplicate inline info in stack maps.\n\nThis saves 0.3% of .oat file size.\n\nTest: test-art-host-gtest-stack_map_test\nChange-Id: Ic7d5addf04fb9b7a2f29a7d1d99ea93b39388fd2\n"
    },
    {
      "commit": "0366f3251c3078a0161d178e3b0afd5efc4c84c0",
      "tree": "7c735fe5a4214689114e48a0989ceffa85dacaf8",
      "parents": [
        "5ab7d77cdc10f3e50c2cff21f29de5865d90cf7d",
        "049d68181e4862271acc027bcb0b4cf5bcc122b6"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sun Jun 03 09:51:22 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sun Jun 03 09:51:22 2018 +0000"
      },
      "message": "Merge \"Rewrite stackmap verification code.\""
    },
    {
      "commit": "5ab7d77cdc10f3e50c2cff21f29de5865d90cf7d",
      "tree": "34fb7def8d418d20774f7e4e72146593a8f96641",
      "parents": [
        "61ee8fe6e07595ec8e50f209e97e1502dac94510",
        "cc7e20f9ec7b4a7a57f7196e5e8be67a727f21d3"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Sat Jun 02 15:53:02 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jun 02 15:53:02 2018 +0000"
      },
      "message": "Merge \"Revert \"Move runtime/ to ClassAccessor\"\""
    },
    {
      "commit": "cc7e20f9ec7b4a7a57f7196e5e8be67a727f21d3",
      "tree": "3aebc9078ad94f132f7a5df0813a97bbdd4c4ed9",
      "parents": [
        "2649ecf6c59a29262556aa356fbf894d49df8fe7"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Sat Jun 02 05:37:39 2018 +0000"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Sat Jun 02 15:45:36 2018 +0000"
      },
      "message": "Revert \"Move runtime/ to ClassAccessor\"\n\nSeems to cause \u0027atest CtsInlineMockingTestCases\u0027 and other tests\nto fail due to sending agents dex files with hiddenapi flags still\npresent.\n\nThis reverts commit 2649ecf6c59a29262556aa356fbf894d49df8fe7.\n\nReason for revert: Seems to be causing sysui test failures, maybe\n\nBug: 77709234\nBug: 79758018\nBug: 91962648\n\nTest: Tree-Hugger\n\nChange-Id: I2cab5d0d58808dd8beb38400d2811307f26e1021\n"
    },
    {
      "commit": "61ee8fe6e07595ec8e50f209e97e1502dac94510",
      "tree": "6d0a5f470d60076f0fd0f16b9c37df62062d02e9",
      "parents": [
        "6bb8751785d045441d06d9728c5c59dd69338f14",
        "5f93710283ded435c2be2df16a8e04ab6f3ff5d7"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sat Jun 02 11:35:40 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jun 02 11:35:40 2018 +0000"
      },
      "message": "Merge \"Fix asan build: Fix compare function in BitTable.\""
    },
    {
      "commit": "5f93710283ded435c2be2df16a8e04ab6f3ff5d7",
      "tree": "0b7c3703f31c5e17dd96abc797d298e887d0926a",
      "parents": [
        "03f16e4de1e3289414888fe0a5104205a781bd2f"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sat Jun 02 10:24:25 2018 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sat Jun 02 10:26:56 2018 +0100"
      },
      "message": "Fix asan build: Fix compare function in BitTable.\n\nThe underlying memory does not have to be consecutive,\nso we need to use proper iterator in the equal method.\n\nTest: ./art/test/testrunner/run_build_test_target.py art-asan\nChange-Id: Ice5c29cf8fdc9e6d5f86b66b8bbc376cfe7b4ded\n"
    },
    {
      "commit": "6bb8751785d045441d06d9728c5c59dd69338f14",
      "tree": "f9b204f1093333d6e326a57b8e0729b36eb49a0d",
      "parents": [
        "b1daf3469a2073837c1a236c13bd6666e4aae9f1",
        "71ec1cc0665cdb9d39f4fd284d68962020417a53"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sat Jun 02 05:06:05 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jun 02 05:06:05 2018 +0000"
      },
      "message": "Merge \"Rewrite dex register map encoding in stackmaps.\""
    },
    {
      "commit": "48de723721a9103bc3374c00f1e18ee7dcaea49a",
      "tree": "17a804455d5ac9b01e365f083a83e393ab06382b",
      "parents": [
        "b1daf3469a2073837c1a236c13bd6666e4aae9f1"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Jun 01 17:30:29 2018 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Jun 01 17:34:40 2018 -0700"
      },
      "message": "Refactor experiments to allow multidex analysis\n\nAnalyze multidex deduplication for debug infos when excluding the\nheader fields.\n\nBug: 77721545\nTest: test-art-host\n\nChange-Id: I247399aaecaf072cce1b3e035256db0f5e91e8c3\n"
    },
    {
      "commit": "b1daf3469a2073837c1a236c13bd6666e4aae9f1",
      "tree": "27314c6633950592bf3bb4425506d9fa60a4656d",
      "parents": [
        "cb4c8b59436bcec4f785656ed90aa8c3fd37b986",
        "31380c788d77dc7efc451817c3619c454507007d"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Jun 01 22:04:28 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 01 22:04:28 2018 +0000"
      },
      "message": "Merge \"Add experiment for analyzing debug info\""
    },
    {
      "commit": "31380c788d77dc7efc451817c3619c454507007d",
      "tree": "27314c6633950592bf3bb4425506d9fa60a4656d",
      "parents": [
        "cb4c8b59436bcec4f785656ed90aa8c3fd37b986"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu May 31 18:12:27 2018 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Jun 01 13:13:28 2018 -0700"
      },
      "message": "Add experiment for analyzing debug info\n\nAnalyze entropy of debug info to estimates a close upper bound\nsavings from huffman encoding debug infos.\n\nAlso measure how many debug info bytes are dedupable if you exclude\nthe line number and parameter names.\n\nSample output:\nDebug info bytes 96101012(5.70%)\n  DBG_END_SEQUENCE: 6401069(0.38%)\n  DBG_ADVANCE_PC: 3709064(0.22%)\n  DBG_ADVANCE_LINE: 8620724(0.51%)\n  DBG_START_LOCAL: 5244232(0.31%)\n  DBG_START_LOCAL_EXTENDED: 1763845(0.10%)\n  DBG_END_LOCAL: 1216044(0.07%)\n  DBG_RESTART_LOCAL: 565412(0.03%)\n  DBG_SET_PROLOGUE bytes 5768714(0.34%)\n  DBG_SET_FILE bytes 0(0.00%)\n  special: 36310220(2.15%)\nDebug info entropy 69199724(4.10%)\nDebug info opcode bytes 55613021(3.30%)\nDebug info opcode entropy 34792401(2.06%)\nDebug info non header bytes 69599324(4.13%)\nDebug info deduped non header bytes 52475493(3.11%)\n\nBug: 77721545\nTest: test-art-host\nChange-Id: I031322e3b79a1572fcbb9e513ded9708e3b48354\n"
    },
    {
      "commit": "3a0eef03bc02b6e74db8f795cd9fc85164ec133d",
      "tree": "ebec7818c2a1ceb1af3093a44352178acdf473f0",
      "parents": [
        "df810b9c8d5013cd6f5799a75b6aaf0f3991210c"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Jun 01 11:10:14 2018 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Jun 01 11:10:14 2018 -0700"
      },
      "message": "Run debuggable tests on art-jit\n\nWe were not running jit-debuggable tests anywhere. Adding them to the\nart-jit column should give us coverage for this configuration.\n\nTest: ./test/testrunner/run_build_test_target.py art-jit\nChange-Id: I7df9c017c9237910c4950888f04dd0a45eeac8da\n"
    },
    {
      "commit": "cb4c8b59436bcec4f785656ed90aa8c3fd37b986",
      "tree": "0873aa08900bc64781b377557625d24e32bf034d",
      "parents": [
        "2a2cf2760ad4e16feff43519bc22bd5d03bd0fc1",
        "0f22ea560a4f282bf29ae59f291e4e9835b71dfa"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jun 01 16:17:42 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 01 16:17:42 2018 +0000"
      },
      "message": "Merge \"Add system and oahl stubs to veridex.zip\""
    },
    {
      "commit": "2a2cf2760ad4e16feff43519bc22bd5d03bd0fc1",
      "tree": "6fb19f4442d5bcc9661a5d65230c489af3002118",
      "parents": [
        "2234a3882fa2e9c25ed99952a571718e27d7d4ca",
        "ecec8284f56d01f360762402d572740d88c244c6"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jun 01 15:38:00 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 01 15:38:00 2018 +0000"
      },
      "message": "Merge \"ART: Refactor mterp slightly\""
    },
    {
      "commit": "bcf175247272d0e321c8d988c3c01c123b56e36e",
      "tree": "9f65ece5ce9474aa4fcf16fbfca6278109dc9a67",
      "parents": [
        "09c5ca40635faee00f40f6ca0581dd475efd545e"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Jun 01 13:14:32 2018 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Jun 01 16:31:30 2018 +0100"
      },
      "message": "ObjPtr\u003c\u003e-ify array allocations.\n\nAnd remove some unnecessary calls to ObjPtr\u003c\u003e::Ptr().\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 31113334\nChange-Id: Ie313980f7f23b33b0ccea4fa8d5131d643c59080\n"
    },
    {
      "commit": "2234a3882fa2e9c25ed99952a571718e27d7d4ca",
      "tree": "704c53f15d05f2070d215bbbe34e200b96c4ed14",
      "parents": [
        "a5359a3bf47c4b086fe717ae35dfa6be779824bd",
        "09c5ca40635faee00f40f6ca0581dd475efd545e"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Jun 01 13:50:30 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 01 13:50:30 2018 +0000"
      },
      "message": "Merge \"Clean up class resolution and lookup.\""
    },
    {
      "commit": "049d68181e4862271acc027bcb0b4cf5bcc122b6",
      "tree": "0073869bb1870fd31b2d81119bdc60eba456dc5a",
      "parents": [
        "71ec1cc0665cdb9d39f4fd284d68962020417a53"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri May 18 14:46:49 2018 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Jun 01 13:26:48 2018 +0100"
      },
      "message": "Rewrite stackmap verification code.\n\nThe new version is more complicated but it gives much higher\nconfidence about the correctness of the stackmap encoding.\n\nThe old version was comparing the internal builder entries to the\ndecoded information, which verified the bit-level manipulations,\nbut it did not verify that we created the internal state correctly.\n\nThe new version directly compares the parameters passed to the\nStackMapStream and the decoded values. This way, it really tests\nthe whole system. It uses lambda captures to record the parameters.\n\nTest: test-art-host-gtest-stack_map_test\nChange-Id: Ib92819cc35ce0d790128392d303f6feabd7d9c74\n"
    },
    {
      "commit": "71ec1cc0665cdb9d39f4fd284d68962020417a53",
      "tree": "8d19b11ab3e04213c46b1b12ae94dbf54b305bfb",
      "parents": [
        "03f16e4de1e3289414888fe0a5104205a781bd2f"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri May 18 15:57:25 2018 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Jun 01 13:26:46 2018 +0100"
      },
      "message": "Rewrite dex register map encoding in stackmaps.\n\nSimplify code by encoding dex register maps using BitTables.\nThe overall design is unchanged (bitmask+indices+catalogue).\n\nThis CL saves ~0.4% of .oat file size.\n\nThe dex register map decoding is factor of 3 faster now\n(based on the time to verify the register maps on Arm).\nThis is not too surprising as the old version was O(n^2).\n\nIt also reduces compiler arena memory usage by 11% since the\nBitTableBuilder is more memory efficient, we store less\nintermediate data, and we deduplicate most data on the fly.\n\nTest: test-art-host-gtest-stack_map_test\nChange-Id: Ib703a5ddf7f581280522d589e4a2bfebe53c26a9\n"
    },
    {
      "commit": "0f22ea560a4f282bf29ae59f291e4e9835b71dfa",
      "tree": "deef60c8d8b83a211e01432bcaa52ce96af70de0",
      "parents": [
        "1539a11150ca9c28fec353b38508267c41d7814b"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu May 31 15:51:21 2018 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jun 01 12:59:36 2018 +0100"
      },
      "message": "Add system and oahl stubs to veridex.zip\n\nTest: m dist\nChange-Id: I354d2f90c42c0cfa7e7d67052c68b455e12fdd5c\n"
    },
    {
      "commit": "09c5ca40635faee00f40f6ca0581dd475efd545e",
      "tree": "5fb13e8eebec283d8c41ce874fbd471f93915fd1",
      "parents": [
        "317892b756cd2a87c01928b09e99e020c86dea10"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu May 31 15:15:31 2018 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Jun 01 11:16:58 2018 +0100"
      },
      "message": "Clean up class resolution and lookup.\n\nSimplify the code and avoid read barriers when appropriate.\nRelax class status check in ArtField::GetDeclaringClass()\nbecause we can see ClassStatus::kIdx from the from-space\nclass object for kReadBarrierOption\u003dkWithoutReadBarrier.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nChange-Id: I83886a64fe5a99a1c3c30eab3b35dae449e6b4bc\n"
    },
    {
      "commit": "a5359a3bf47c4b086fe717ae35dfa6be779824bd",
      "tree": "08e786e30b2d1fbe886c688b5545cff9906b057f",
      "parents": [
        "22bd3c969533986640e17e20f38975b22f30af1c",
        "317892b756cd2a87c01928b09e99e020c86dea10"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jun 01 09:55:34 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 01 09:55:34 2018 +0000"
      },
      "message": "Merge \"Remove static GcRoot\u003c\u003es from Class and ClassExt.\""
    },
    {
      "commit": "22bd3c969533986640e17e20f38975b22f30af1c",
      "tree": "51bc1e9200ca13e1cd1bf41c80dd3ed828958df1",
      "parents": [
        "35dae4bac0907b95742ed2842bf5c8d9e80c038e",
        "5dd3aa71eca714a83aa26dbbcbd51a6145da5fec"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jun 01 09:53:22 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 01 09:53:22 2018 +0000"
      },
      "message": "Merge \"Enable D8 for ART tests already working with D8.\""
    },
    {
      "commit": "5dd3aa71eca714a83aa26dbbcbd51a6145da5fec",
      "tree": "9a25ce8dd15d4c625aeaa1f86f150b559ef1f999",
      "parents": [
        "08f1973a345d78a9336b7ce2bf1df82f1c2515db"
      ],
      "author": {
        "name": "Tamas Kenez",
        "email": "tamaskenez@google.com",
        "time": "Tue May 01 09:36:50 2018 +0200"
      },
      "committer": {
        "name": "Tamas Kenez",
        "email": "tamaskenez@google.com",
        "time": "Fri Jun 01 09:17:27 2018 +0000"
      },
      "message": "Enable D8 for ART tests already working with D8.\n\nBug: 65168732\nTest: art/test.py -j20 --host -b\n      Tested with --gcstress and --target locally.\nChange-Id: Ie598973c97bbbd78d441d448c51e59599023404b\n"
    },
    {
      "commit": "35dae4bac0907b95742ed2842bf5c8d9e80c038e",
      "tree": "4aa5a795f958e220a89f658caffb88370aa33db6",
      "parents": [
        "c30acf7f00bc69ca5063c0daeb149f2f3a796de8",
        "2bd4fff4b58d724832a8593bfcd15244cefcc395"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jun 01 08:45:48 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 01 08:45:48 2018 +0000"
      },
      "message": "Merge \"ART: Remove unused WellKnownClasses\""
    },
    {
      "commit": "2bd4fff4b58d724832a8593bfcd15244cefcc395",
      "tree": "5b06fa01866b53a8b57997638dc111b64780a27a",
      "parents": [
        "df0eef1aecd7af6191444128f7e90e18faf22c7e"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Jun 01 06:27:09 2018 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Jun 01 09:42:42 2018 +0100"
      },
      "message": "ART: Remove unused WellKnownClasses\n\nTest: art/test.py --host\nBug: 74943277\nChange-Id: I7bd7f3b05bc802579211a31a08ab494021b1ccbd\n"
    },
    {
      "commit": "c30acf7f00bc69ca5063c0daeb149f2f3a796de8",
      "tree": "015c81e4d74c7146c00e325a1c8a556535476161",
      "parents": [
        "df0eef1aecd7af6191444128f7e90e18faf22c7e",
        "4b9bac7ee87d9c41ce3d129ff0db42f602c98259"
      ],
      "author": {
        "name": "Tamas Kenez",
        "email": "tamaskenez@google.com",
        "time": "Fri Jun 01 08:03:18 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 01 08:03:18 2018 +0000"
      },
      "message": "Merge \"ART-tests: Remove DX-dependency from 530-checker-lse\""
    },
    {
      "commit": "df0eef1aecd7af6191444128f7e90e18faf22c7e",
      "tree": "21ed7cf6c9fdcda4905e130e05dc786342a93384",
      "parents": [
        "3ebdf7495ead52b76afdccd91c3b89264e4bf250",
        "2649ecf6c59a29262556aa356fbf894d49df8fe7"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu May 31 20:38:26 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu May 31 20:38:26 2018 +0000"
      },
      "message": "Merge \"Move runtime/ to ClassAccessor\""
    },
    {
      "commit": "2649ecf6c59a29262556aa356fbf894d49df8fe7",
      "tree": "5534dfcb7d32be889acba07787b303c221869f82",
      "parents": [
        "65e463cf7ea91003ef030c8a819ae4596c9b820f"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue May 29 14:07:52 2018 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu May 31 11:24:30 2018 -0700"
      },
      "message": "Move runtime/ to ClassAccessor\n\nAdded more iterator helpers, added logic for dealing with hidden API\nflags.\n\nBug: 77709234\nBug: 79758018\nTest: test-art-host\n\nChange-Id: I3e6d34dd3fe61f1a3256a1cc4c74b63a6bdf514c\n"
    },
    {
      "commit": "3ebdf7495ead52b76afdccd91c3b89264e4bf250",
      "tree": "b3a15b18110fdaa06316027dd997a20ac37ca9a4",
      "parents": [
        "03f16e4de1e3289414888fe0a5104205a781bd2f",
        "e2e5e66a9cec84f83c2a47a815bae28f9c849d8d"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu May 31 16:43:41 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu May 31 16:43:41 2018 +0000"
      },
      "message": "Merge \"Improve diagnostics in ART script tools/teardown-buildbot-device.sh.\""
    },
    {
      "commit": "03f16e4de1e3289414888fe0a5104205a781bd2f",
      "tree": "4ae1434e3e8e038118d5c13fc38b80bafb900c2e",
      "parents": [
        "11c0f3e15ae0f0064a0274a369737c7b6c65681d",
        "d775f96090a588efbc837961434b10c57bcf189c"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu May 31 15:00:40 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu May 31 15:00:40 2018 +0000"
      },
      "message": "Merge \"Ensure all PCs in stack_map_test are aligned.\""
    }
  ],
  "next": "e2e5e66a9cec84f83c2a47a815bae28f9c849d8d"
}
