)]}'
{
  "log": [
    {
      "commit": "2c4b084bf93ddfea6b60d05ff82c44dab9de9f28",
      "tree": "e1dc28ba175bfa67def5db8b22847b15f87bdb93",
      "parents": [
        "ba3a790338725a37ecd4cb314c4a6147e29aef38"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Dec 13 11:49:51 2017 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Dec 15 08:20:08 2017 -0800"
      },
      "message": "Fix cdex bugs to enable ART_DEFAULT_COMPACT_DEX_LEVEL\u003dfast tests passing\n\nCompute dex checksum for compact dex generation. Handle input vdex\nby not aborting in oat_writer, instead just avoid generating compact\ndex for the input vdex case.\n\nRe-enabled some compact dex tests.\n\nBug: 63756964\nTest: ART_DEFAULT_COMPACT_DEX_LEVEL\u003dfast test-art-host\nChange-Id: Ic9b4e4e59e6cd22b66ee2fc0d32c9b4a15f13497\n"
    },
    {
      "commit": "ba3a790338725a37ecd4cb314c4a6147e29aef38",
      "tree": "f81b0225fa22d02e9726c743d486d314cde91893",
      "parents": [
        "df6e7fa50734cd052c34e28128a6d2d398790072",
        "04366f382239f4bcf1f9c67bb1ff6975607cd8e4"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 14 16:46:34 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 14 16:46:34 2017 +0000"
      },
      "message": "Merge \"Revert \"ART: Try to statically evaluate some conditions.\"\""
    },
    {
      "commit": "df6e7fa50734cd052c34e28128a6d2d398790072",
      "tree": "b90bd476278b4b02cd3711aa2eb28ed2d70e40d7",
      "parents": [
        "ff789be0c6f829e8c2fe6a769b98e3601ddc71df",
        "cfe50bb5a66251feeb4a16d25eb2f95d7a0f99ce"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu Dec 14 16:29:02 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 14 16:29:02 2017 +0000"
      },
      "message": "Merge \"Implemented missing move/exchange paths for x86\""
    },
    {
      "commit": "ff789be0c6f829e8c2fe6a769b98e3601ddc71df",
      "tree": "5228665c2c309c95e198fde0070eb31ea19756ab",
      "parents": [
        "df259b09fe78bc6864e757a2a15990c8b628455c",
        "ad7d26fa0afee37ff73bd82679925ae0d2cffad3"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu Dec 14 16:27:05 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 14 16:27:05 2017 +0000"
      },
      "message": "Merge \"Added choice of dexer to fuzzer scripts.\""
    },
    {
      "commit": "df259b09fe78bc6864e757a2a15990c8b628455c",
      "tree": "897e74d9da4e92faae5c24350fa2f999cbfb2b1e",
      "parents": [
        "7eb4333d0b60a13f9d3126eadef9eb16c399662a",
        "f4886df5e72fa21eddfc4cc7860f4154929b3380"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Dec 14 15:54:28 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 14 15:54:28 2017 +0000"
      },
      "message": "Merge \"Add mini-debug-info generation mode for JIT.\""
    },
    {
      "commit": "04366f382239f4bcf1f9c67bb1ff6975607cd8e4",
      "tree": "243c70c2b0317ea52cae27d633d7e68e7aa4db05",
      "parents": [
        "1de1e11ac90db9fad8916ac43d43714ccb8d978f"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Dec 14 15:15:19 2017 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Dec 14 15:15:19 2017 +0000"
      },
      "message": "Revert \"ART: Try to statically evaluate some conditions.\"\n\nCL has an unwanted 10-15% compile-time impact.\n\nThis reverts commit 1de1e11ac90db9fad8916ac43d43714ccb8d978f.\n\nChange-Id: I76b45aa95bbd24dd025d2ee6cf37d77fe17b8497\n"
    },
    {
      "commit": "f4886df5e72fa21eddfc4cc7860f4154929b3380",
      "tree": "897e74d9da4e92faae5c24350fa2f999cbfb2b1e",
      "parents": [
        "7eb4333d0b60a13f9d3126eadef9eb16c399662a"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Dec 11 16:06:29 2017 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Dec 14 13:52:07 2017 +0000"
      },
      "message": "Add mini-debug-info generation mode for JIT.\n\nThis excludes everything that is not needed for backtraces and\ncompresses the resulting ELF file (wrapped in another ELF file).\n\nThis approximately halves the size of the debug data for JIT.\nThe vast majority of the data is the overhead of ELF header.\nWe could amortize this by storing more methods per ELF file.\n\nIt also adds NOBITS .text section to all debug ELF files,\nas that seems necessary for gdb to find the symbols.\nOn the other hand, it removes .rodata from debug ELF files.\n\nTest: Manually tested that gdb can use this data to unwind.\nTest: m test-art-host-gtest\nTest: testrunner.py --optimizing --host\nTest: testrunner.py -t 137-cfi\n\nChange-Id: Ic0a2dfa953cb79973a7b2ae99d32018599e61171\n"
    },
    {
      "commit": "7eb4333d0b60a13f9d3126eadef9eb16c399662a",
      "tree": "c2519492c3566cf07e33c31ea3561fbc07438362",
      "parents": [
        "ced61ab8f2909c5d90d74f020edbfda1e8601781",
        "e4033fa9647774382d303f3b20e7139998565035"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 14 03:12:39 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 14 03:12:39 2017 +0000"
      },
      "message": "Merge \"Loosen check:jni around GetStatic[...]Field\""
    },
    {
      "commit": "e4033fa9647774382d303f3b20e7139998565035",
      "tree": "6b06327802406f1a89cedda029b330d0c598b094",
      "parents": [
        "9e73b32fed15d262b0393f114b9602ac7ef88917"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Dec 13 10:32:59 2017 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Dec 13 16:45:10 2017 -0800"
      },
      "message": "Loosen check:jni around GetStatic[...]Field\n\n-Xcheck:jni was requiring that the jclass being passed to\nGetStatic[...]Field was the exact same class as the jfieldID\u0027s\ndeclaring class. This was stricter than is really needed and causes\nsome issues when dealing with fields where the declaring class cannot\nbe easily determined.\n\nBug: 70532839\nTest: ./test.py --host -j50\nChange-Id: I0987de09af956ed9a8dde37c50606604fdd94b87\n"
    },
    {
      "commit": "ced61ab8f2909c5d90d74f020edbfda1e8601781",
      "tree": "60a35934a0b9cae5f6fde1d92bcb105e0033d4c9",
      "parents": [
        "e263e482b29515a3d03b210207af22716930e797",
        "b0042b83f9695bb7e2f07c451166a97a6c14383f"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Dec 13 23:40:59 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 13 23:40:59 2017 +0000"
      },
      "message": "Merge \"Specify INFO log severity for -XX:DumpGCPerformanceOnShutdown\""
    },
    {
      "commit": "e263e482b29515a3d03b210207af22716930e797",
      "tree": "63e46a8573f7f514b984b4b0c233ea1be42f291f",
      "parents": [
        "950a669ef184e0f84fe44a58baa87c09d2d02c51",
        "d47dea28cf430815ed8a33081490ad5ad87e1cd6"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 13 22:58:20 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 13 22:58:20 2017 +0000"
      },
      "message": "Merge changes I78041b1b,I5736187b\n\n* changes:\n  Remove some Tests that are passing from external_oj_libjdwp_art_failures.\n  Rename libjdwp expectations files.\n"
    },
    {
      "commit": "b0042b83f9695bb7e2f07c451166a97a6c14383f",
      "tree": "8509e71a666a3c67b0a3459165b4c5282eedb41d",
      "parents": [
        "3f74ea478d755453a2fe5789ce155e80be3e7c7f"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Dec 13 13:50:36 2017 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Dec 13 13:52:06 2017 -0800"
      },
      "message": "Specify INFO log severity for -XX:DumpGCPerformanceOnShutdown\n\nThe art script only has severity set to warning, this was causing\nthe GC timings to not get output.\n\nBug: 70630582\nTest: art -Xmx512m -XX:DumpGCPerformanceOnShutdown .. some benchmark\n\nChange-Id: I03e4e09836f0bd73fbbff3640b4db8617cc63c95\n"
    },
    {
      "commit": "950a669ef184e0f84fe44a58baa87c09d2d02c51",
      "tree": "e302c17e2c77b784db7b319247f00ce205d162a8",
      "parents": [
        "d1c3915293412da3ae4898b446d3cdffa3d07058",
        "89ff8b23f7c4189ba82407d95c3100c2f397cf19"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Wed Dec 13 20:57:51 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 13 20:57:51 2017 +0000"
      },
      "message": "Merge \"ARM64: Workaround for the callee saved FP registers and SIMD.\""
    },
    {
      "commit": "cfe50bb5a66251feeb4a16d25eb2f95d7a0f99ce",
      "tree": "10149931e81ce53b6947111d66f2178db08b2bbe",
      "parents": [
        "0f13269734be07b5869005952a3cb91b0b34b73d"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Tue Dec 12 14:54:12 2017 -0800"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Wed Dec 13 10:45:15 2017 -0800"
      },
      "message": "Implemented missing move/exchange paths for x86\n\nRationale:\nRecent SIMD register spilling bug fix exposed missing\ncases in the x86 and x86_64 code generator for moving\nand exchanging SIMD spill slots.\n\nTest: run-test --host  -Xcompiler-option --instruction-set-features\u003dsse4.1 623-checker-loop-regressions (32/64)\n\nBug: 70559970\nChange-Id: Iae66d6874b93af5b2db80db70bce4b0f4a9b9f3f\n"
    },
    {
      "commit": "ad7d26fa0afee37ff73bd82679925ae0d2cffad3",
      "tree": "c7dd3f9e1026cd49200fe86bfd4e67808a73dd2c",
      "parents": [
        "acea2435e2dd93e8ec1e810bd024e60fe74c399f"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Tue Dec 12 15:58:21 2017 -0800"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Wed Dec 13 10:19:54 2017 -0800"
      },
      "message": "Added choice of dexer to fuzzer scripts.\n\nRationale:\nWe know you have a choice when it comes to dexers.\nThank you for flying......\n\nBug: 70576364\n\nTest: dexfuzz and jfuzz scripts\n\nChange-Id: Id3d18cd76adb9b3099dbf039314ebeb855507b72\n"
    },
    {
      "commit": "d47dea28cf430815ed8a33081490ad5ad87e1cd6",
      "tree": "5b9cc2f9072a8f5315707d6c88b247d36d5dd9ce",
      "parents": [
        "e4f220d489a84873ae7eb0492e3d009bc274bfab"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Dec 13 10:19:38 2017 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Dec 13 10:19:38 2017 -0800"
      },
      "message": "Remove some Tests that are passing from external_oj_libjdwp_art_failures.\n\nThe DDM test is passing and the VMDebug002 test is only failing\nsporadically on fugu due to timeouts.\n\nTest: ./art/tools/run-libjdwp-tests.sh --mode\u003dhost\nChange-Id: I78041b1bd2beebbb8e6424a63e0e40751bde20ed\n"
    },
    {
      "commit": "e4f220d489a84873ae7eb0492e3d009bc274bfab",
      "tree": "3b95df0bc57e84fccc768c8a057e56f22f3d9bc1",
      "parents": [
        "d1c3915293412da3ae4898b446d3cdffa3d07058"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Dec 13 10:13:50 2017 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Dec 13 10:19:07 2017 -0800"
      },
      "message": "Rename libjdwp expectations files.\n\nIt was very confusing and difficult to remember which files went with\nwhich test configuration. Hopefully with this rename things will be\nclearer.\n\nTest: ./art/tools/run-jdwp-tests.sh --mode\u003dhost\nTest: ./art/tools/run-libjdwp-tests.sh --mode\u003dhost\nTest: ./art/tools/run-prebuilt-libjdwp-tests.sh --mode\u003dhost\nChange-Id: I5736187bab4b79e47699f3177c328ff2ddff5cba\n"
    },
    {
      "commit": "89ff8b23f7c4189ba82407d95c3100c2f397cf19",
      "tree": "95a49416c9231eea98c927e8777b7721b24974a3",
      "parents": [
        "03376f4c4de8e419402bf40fdff4135728ffb21e"
      ],
      "author": {
        "name": "Artem Serov",
        "email": "artem.serov@linaro.org",
        "time": "Mon Nov 20 11:51:05 2017 +0000"
      },
      "committer": {
        "name": "Artem Serov",
        "email": "artem.serov@linaro.org",
        "time": "Wed Dec 13 15:33:29 2017 +0000"
      },
      "message": "ARM64: Workaround for the callee saved FP registers and SIMD.\n\nTreat as scheduling barriers those vector instructions whose live\nranges exceed the vectorized loop boundaries. This is a workaround\nfor the lack of notion of SIMD register in the compiler; around a\ncall we have to save/restore all live SIMD\u0026FP registers (only\nlower 64 bits of SIMD\u0026FP registers are callee saved) so don\u0027t\nreorder such vector instructions.\n\nTest: 706-checker-scheduler, test-art-host, test-art-target\nBug: 69667779\n\nChange-Id: I31e57518339d41545a0c519f7299afe381a8286c\n"
    },
    {
      "commit": "d1c3915293412da3ae4898b446d3cdffa3d07058",
      "tree": "41fe337e0294a3935e44d11cf24fb40609e47e70",
      "parents": [
        "03376f4c4de8e419402bf40fdff4135728ffb21e",
        "5791327fecd58ab256ebceb44d97e62d16ab8e54"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Dec 13 15:21:06 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 13 15:21:06 2017 +0000"
      },
      "message": "Merge \"Fix typo in test name.\""
    },
    {
      "commit": "5791327fecd58ab256ebceb44d97e62d16ab8e54",
      "tree": "71b0ee56eae7951aefe102b92053a6478ed56f8c",
      "parents": [
        "3f74ea478d755453a2fe5789ce155e80be3e7c7f"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Dec 13 15:19:40 2017 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Dec 13 15:19:40 2017 +0000"
      },
      "message": "Fix typo in test name.\n\nChange-Id: I1e2d37069623798a6fba495da9bc17ce11f96725\n"
    },
    {
      "commit": "03376f4c4de8e419402bf40fdff4135728ffb21e",
      "tree": "5d55cc893e2c445f6d181830bd6ae446010fbf8f",
      "parents": [
        "3f74ea478d755453a2fe5789ce155e80be3e7c7f",
        "1de1e11ac90db9fad8916ac43d43714ccb8d978f"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 13 11:06:54 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 13 11:06:54 2017 +0000"
      },
      "message": "Merge \"ART: Try to statically evaluate some conditions.\""
    },
    {
      "commit": "3f74ea478d755453a2fe5789ce155e80be3e7c7f",
      "tree": "d28868a2efebae079e1f26d146acd6503f3de45d",
      "parents": [
        "b67c20cea4deb9b42c196ec834f9fea1921dcb7b",
        "e155f4b858be42a825e8270f65abb0fdcf6cbc9f"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Dec 13 09:52:12 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 13 09:52:12 2017 +0000"
      },
      "message": "Merge \"Decouple virtual memory allocation in ElfBuilder.\""
    },
    {
      "commit": "b67c20cea4deb9b42c196ec834f9fea1921dcb7b",
      "tree": "f33cec3640610df814653d47cfb529c2aefb3023",
      "parents": [
        "ea32413df41f5dc7d41d5870744c7ee21a8e3c5e",
        "566865df6a6292355f061ea857f8df5dcba44ca3"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Dec 13 09:40:01 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 13 09:40:01 2017 +0000"
      },
      "message": "Merge \"Reduce DWARF local variable error to just warning.\""
    },
    {
      "commit": "ea32413df41f5dc7d41d5870744c7ee21a8e3c5e",
      "tree": "71c4694e7214962dd606f703cf010b9f7a738664",
      "parents": [
        "f686b5caf2f8033e8a95ef61ed865b344d022da8",
        "33d0b4a0b1bf19fc2493b5d6ebfcb2bd1935c0bd"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Dec 13 09:03:44 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 13 09:03:44 2017 +0000"
      },
      "message": "Merge \"Blacklist failing test.\""
    },
    {
      "commit": "33d0b4a0b1bf19fc2493b5d6ebfcb2bd1935c0bd",
      "tree": "71c4694e7214962dd606f703cf010b9f7a738664",
      "parents": [
        "f686b5caf2f8033e8a95ef61ed865b344d022da8"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Dec 13 09:01:46 2017 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Dec 13 09:01:46 2017 +0000"
      },
      "message": "Blacklist failing test.\n\nChange-Id: I322af2e66371a3858c1fb61a580491a5ce6cbdf3\n"
    },
    {
      "commit": "f686b5caf2f8033e8a95ef61ed865b344d022da8",
      "tree": "0dfe2bf45208f5cf7b7ac6d5142fd9b9f205d3df",
      "parents": [
        "acea2435e2dd93e8ec1e810bd024e60fe74c399f",
        "3cd9bcf0a834bc63f794f10e17796be7289daad8"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 13 02:34:47 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 13 02:34:47 2017 +0000"
      },
      "message": "Merge \"Add new VMDebug jdwp test to skips for prebuilt-libjdwp\""
    },
    {
      "commit": "acea2435e2dd93e8ec1e810bd024e60fe74c399f",
      "tree": "98a9bcf105df391829a8804995e480bfe4130ebf",
      "parents": [
        "76fb093e618970bafec4375cc6e7034fc11c7541",
        "e5463a88039a14c1d1d501d2932d069e6d4224e2"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Dec 12 23:38:25 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 12 23:38:25 2017 +0000"
      },
      "message": "Merge changes Ic67db951,I1ba0f43c\n\n* changes:\n  Ensure that DDM processing doesn\u0027t leave unhandled exceptions\n  Clean up JVMTI DDMS extension function.\n"
    },
    {
      "commit": "76fb093e618970bafec4375cc6e7034fc11c7541",
      "tree": "351da787480fca73df3e35b9db796642c5853b33",
      "parents": [
        "702f6f276d2b81ae27bce51c2e78b04aa45a5796",
        "8d8a005ae3ae355dee88b3cb1351b93a070d4209"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Dec 12 23:28:06 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 12 23:28:06 2017 +0000"
      },
      "message": "Merge \"ART: Reinstate secondary-image-patching exit\""
    },
    {
      "commit": "e5463a88039a14c1d1d501d2932d069e6d4224e2",
      "tree": "88eda80bdf7cc2fb7dec4381b21ff444b8741c58",
      "parents": [
        "6f2a6341b6dd8910aebacefea653f11006b46abe"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Dec 12 13:33:28 2017 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Dec 12 21:52:40 2017 +0000"
      },
      "message": "Ensure that DDM processing doesn\u0027t leave unhandled exceptions\n\nPreviously if a DDM chunk handler returns an invalid chunk the thread\nthat processed the chunk could end up with an unhandled exception.\nThis could be troublesome if it happened on a debugger thread, which\nmight never actually handle it.\n\nTest: ./test.py --host -j50\nBug: 70570850\nChange-Id: Ic67db951d721cf7532b08c0cc3f35bed9396d52d\n"
    },
    {
      "commit": "702f6f276d2b81ae27bce51c2e78b04aa45a5796",
      "tree": "84e1e493074878447cf1fe01ece97b9eff8b5f52",
      "parents": [
        "6f05cca7f37eba9f831c811af044bfe735acb8cd",
        "31f4c9f86522061d682fd0e2c6003043cec496dc"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Dec 12 21:37:59 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 12 21:37:59 2017 +0000"
      },
      "message": "Merge \"Add CodeItemDebugInfoAccessor\""
    },
    {
      "commit": "6f2a6341b6dd8910aebacefea653f11006b46abe",
      "tree": "54c624ea15d204826423f68d17cc35846538f3c0",
      "parents": [
        "9e73b32fed15d262b0393f114b9602ac7ef88917"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Dec 12 09:55:05 2017 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Dec 12 13:22:01 2017 -0800"
      },
      "message": "Clean up JVMTI DDMS extension function.\n\nWe change it to not return failure (and print a warning) if the chunk\nhandler returns an empty chunk. This is a surprisingly common result\nin real-world code and was causing significant log-spam.\n\nBug: 70559172\nTest: ./test.py --host -j50\nChange-Id: I1ba0f43cb2e834b09f51db75ec9100d97e916b62\n"
    },
    {
      "commit": "8d8a005ae3ae355dee88b3cb1351b93a070d4209",
      "tree": "410e03fdd1a1cf4cc8fdec29ea99c9e0e3d9a711",
      "parents": [
        "9e73b32fed15d262b0393f114b9602ac7ef88917"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Dec 12 12:03:04 2017 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Dec 12 21:21:53 2017 +0000"
      },
      "message": "ART: Reinstate secondary-image-patching exit\n\nDo not attempt imageless running with a stale secondary image. Instead\nprune the cache and exit, relying on init restarting the process.\n\nThe combined image checksum is not written down into the boot image\nitself, only into apps. This should really be fixed.\n\nFollow-up to commit a463b6a920a2a0bf14f9cca20a561b412b9349d1.\n\nBug: 30832951\nBug: 69428309\nBug: 70213235\nBug: 70498154\nTest: m test-art-host\nChange-Id: I27ab3384ce4ffd93efb00a2e216cb839fe4357d5\n"
    },
    {
      "commit": "6f05cca7f37eba9f831c811af044bfe735acb8cd",
      "tree": "f256fa7f77e16c182398ce2a204bcd3b4d933565",
      "parents": [
        "9e73b32fed15d262b0393f114b9602ac7ef88917",
        "a7f6b8151ee8b8c16a11e148fea1c02ca33dc211"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Dec 12 20:56:06 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 12 20:56:06 2017 +0000"
      },
      "message": "Merge \"Add ART_DEFAULT_COMPACT_DEX_LEVEL\""
    },
    {
      "commit": "3cd9bcf0a834bc63f794f10e17796be7289daad8",
      "tree": "7f74ca0d82570d610201000ae8edf506f9992496",
      "parents": [
        "9e73b32fed15d262b0393f114b9602ac7ef88917"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Dec 12 11:30:43 2017 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Dec 12 11:30:43 2017 -0800"
      },
      "message": "Add new VMDebug jdwp test to skips for prebuilt-libjdwp\n\nThe functionality is not implemented in libjdwp.\n\nTest: ./art/tools/run-prebuilt-libjdwp-tests.sh --mode\u003dhost\nBug: 69169846\nChange-Id: If670fb2f4eadd0da786e2f3d37621718f47edc91\n"
    },
    {
      "commit": "1de1e11ac90db9fad8916ac43d43714ccb8d978f",
      "tree": "6653892be4d2372a189c4b82e8c3c8b0be064979",
      "parents": [
        "986005c955860a69d788f7ff7d7f28964eb684ad"
      ],
      "author": {
        "name": "Artem Serov",
        "email": "artem.serov@linaro.org",
        "time": "Thu Jul 20 16:33:59 2017 +0100"
      },
      "committer": {
        "name": "Artem Serov",
        "email": "artem.serov@linaro.org",
        "time": "Tue Dec 12 18:13:10 2017 +0000"
      },
      "message": "ART: Try to statically evaluate some conditions.\n\nIf a condition \u0027cond\u0027 is evaluated in an HIf instruction then in\nthe successors of the this HIF_BLOCK we statically know the value\nof the condition (TRUE in TRUE_SUCC, FALSE in FALSE_SUCC). Using\nthat we could replace another evaluation (use) EVAL of the same\n\u0027cond\u0027 with TRUE value (FALSE value) if every path from the\nENTRY_BLOCK to EVAL_BLOCK contains the edge HIF_BLOCK-\u003eTRUE_SUCC\n(HIF_BLOCK-\u003eFALSE_SUCC).\n\n  if (cond) {\n    ...\n    if (cond) {\n      ...\n    }\n    ...\n    int a \u003d cond ? 5 : 105;\n    ...\n  }\n\nThe patch is a prerequisite step for \"Loop peeling to eliminate\ninvariant exits\" however it brings some value on its own with\na tiny code size reduction in boot-framework.oat (-8Kb).\n\nTest: 458-checker-instruct-simplification\nTest: test-art-target, test-art-host.\nChange-Id: Ifbe45097dc2b5f098176fa1a1d023ea90b76d396\n"
    },
    {
      "commit": "9e73b32fed15d262b0393f114b9602ac7ef88917",
      "tree": "789553690c8033ec1c26f812377abbfe6b55667a",
      "parents": [
        "d06e0bfee78b8dc71dfcd54261b1789be63965d1",
        "666ee3d7c6039c80e75287e311895bd6a9b01e9f"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Dec 12 16:11:41 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 12 16:11:41 2017 +0000"
      },
      "message": "Merge changes Idea9aa42,I2e47280e\n\n* changes:\n  Do not pass DexFile to ClassLinker::Lookup/ResolveType().\n  Do not pass DexFile to ClassLinker::Lookup/ResolveMethod().\n"
    },
    {
      "commit": "d06e0bfee78b8dc71dfcd54261b1789be63965d1",
      "tree": "bbad64847c8e6ccdc3520808195348e4a6c9b74a",
      "parents": [
        "bc96fc6e2d8dd02e9b085b1c7ec03c3f01982816",
        "8a4d1e5f1e4a7b27b894ce9292764f23bf8656bc"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Dec 12 16:07:45 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 12 16:07:45 2017 +0000"
      },
      "message": "Merge \"ART: Give 667-jit-jni-stub more time for compiling.\""
    },
    {
      "commit": "8a4d1e5f1e4a7b27b894ce9292764f23bf8656bc",
      "tree": "96b133f88af74a7b230a327324d1618fd728c7b1",
      "parents": [
        "d13126d1ba8f65e483cd2e9dd18e60c9a0992c6e"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 11 13:30:38 2017 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Dec 12 14:26:21 2017 +0000"
      },
      "message": "ART: Give 667-jit-jni-stub more time for compiling.\n\nTest: Rely on TreeHugger\nBug: 70426338\nChange-Id: I35df51b4ed6f7bb2121d63ed65861fdbad73b004\n"
    },
    {
      "commit": "666ee3d7c6039c80e75287e311895bd6a9b01e9f",
      "tree": "5e65f39ff7cc83af4be3b691c247d7348052f854",
      "parents": [
        "890111968fbd3f5ae528d97e42984c12a3dd27bd"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 11 18:37:36 2017 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Dec 12 13:48:02 2017 +0000"
      },
      "message": "Do not pass DexFile to ClassLinker::Lookup/ResolveType().\n\nThe DexFile can be easily retrieved from the DexCache,\nso reduce the number of arguments that need to be passed.\n\nAlso refactor the code to avoid doing the DexCache lookup\ntwice and avoid unnecessary read barriers in the initial\nDexCache lookup (also for Lookup/ResolveField()).\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nChange-Id: Idea9aa42b6a5bade947e93e330b1abdb9d11b2da\n"
    },
    {
      "commit": "e155f4b858be42a825e8270f65abb0fdcf6cbc9f",
      "tree": "545d99febd61872a7a7c1c8e77e53b104db0ad7a",
      "parents": [
        "bc96fc6e2d8dd02e9b085b1c7ec03c3f01982816"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Dec 06 15:18:38 2017 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Dec 12 11:42:21 2017 +0000"
      },
      "message": "Decouple virtual memory allocation in ElfBuilder.\n\nMulti-boot-image requires knowing the loaded size ahead of time,\nand calculating that size ended up being fairly hacky.\n\nDecouple allocation of virtual memory and allocation of file space,\nso that we have more flexibility when we do those.\n\nTest: The generated boot image is bit-for-bit identical as before.\n\nChange-Id: I012b55a71e7625f2310570f9b91447c9db73578b\n"
    },
    {
      "commit": "bc96fc6e2d8dd02e9b085b1c7ec03c3f01982816",
      "tree": "026115080385984050674455e54721f00cb5df10",
      "parents": [
        "ce61d757e8cef76f0027eeda1ea2a7ac1be432b0",
        "5dd08acd0b568bb05e2e75fc02d8a6d3d7aa6f8e"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Dec 12 08:55:19 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 12 08:55:19 2017 +0000"
      },
      "message": "Merge \"Revert \"Add patchoat test\"\""
    },
    {
      "commit": "5dd08acd0b568bb05e2e75fc02d8a6d3d7aa6f8e",
      "tree": "32e76364a018293f8217da8ea11b4dd15f3e3075",
      "parents": [
        "14e895ed419fcb67c16be1387d248a4e973cf940"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Dec 12 08:54:59 2017 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Dec 12 08:54:59 2017 +0000"
      },
      "message": "Revert \"Add patchoat test\"\n\nBug: 66697305\n\nFails on device\n\nThis reverts commit 14e895ed419fcb67c16be1387d248a4e973cf940.\n\nChange-Id: Id817d738be32f44c5dfc97d2646b0090824dc404\n"
    },
    {
      "commit": "31f4c9f86522061d682fd0e2c6003043cec496dc",
      "tree": "fc7192bc634811bdc8176afc4b5e60a049d56ae0",
      "parents": [
        "f23779bc210ecbf448e61d7b18088b6afb46a476"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Dec 08 15:46:11 2017 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Dec 11 19:55:46 2017 -0800"
      },
      "message": "Add CodeItemDebugInfoAccessor\n\nUse it in places where DecodeDebugPositionInfo is called.\n\nMotivation: Abstract away calls to GetDebugInfoOffset.\n\nBug: 63756964\nTest: test-art-host\nTest: art/tools/run-jdwp-tests.sh \u0027--mode\u003dhost\u0027 --debug\n\nChange-Id: I3ab2eff56c472cc717f49d17fd17eb0b8fde4062\n"
    },
    {
      "commit": "a7f6b8151ee8b8c16a11e148fea1c02ca33dc211",
      "tree": "f82167347158bd46e67cf0980af7131f2c7e5453",
      "parents": [
        "078f96f743805d951cea8f71af768facd17eba78"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Dec 11 13:34:29 2017 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Dec 11 17:54:15 2017 -0800"
      },
      "message": "Add ART_DEFAULT_COMPACT_DEX_LEVEL\n\nIf specified, this option changes the default compact dex level used\nby dex2oat. Defaults to none currently.\n\nBug: 63756964\nTest: ART_DEFAULT_COMPACT_DEX_LEVEL\u003dfast mm test-art-host-gtest and verify it fails for now.\nTest: test/testrunner/testrunner.py --host -j64 and verify it passes\n\nChange-Id: Ib252f432b3545297725656a5cca40d1bb57b0ced\n"
    },
    {
      "commit": "ce61d757e8cef76f0027eeda1ea2a7ac1be432b0",
      "tree": "79b6bfd1f0f223372db4e1a6bdb0e3067100a7b9",
      "parents": [
        "0f13269734be07b5869005952a3cb91b0b34b73d",
        "14e895ed419fcb67c16be1387d248a4e973cf940"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Dec 12 00:51:55 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 12 00:51:55 2017 +0000"
      },
      "message": "Merge \"Add patchoat test\""
    },
    {
      "commit": "14e895ed419fcb67c16be1387d248a4e973cf940",
      "tree": "4429e2c19724c20e2ac2119179e2fadaed1001fe",
      "parents": [
        "92ab698e46dba3b6cff1457f47bfc344cb03f7ec"
      ],
      "author": {
        "name": "Alex Klyubin",
        "email": "klyubin@google.com",
        "time": "Wed Nov 22 12:29:03 2017 -0800"
      },
      "committer": {
        "name": "Alex Klyubin",
        "email": "klyubin@google.com",
        "time": "Mon Dec 11 15:01:52 2017 -0800"
      },
      "message": "Add patchoat test\n\nThe test checks that relocating an image using dex2oat and patchoat\nyields the same ART file, except for OAT checksum and patch offset\ndelta.\n\nTest: make test-art-host-gtest-patchoat_test\nBug: 66697305\nChange-Id: I80f8b996bc8fc88ef798dceac9fd9ecd629045a3\n"
    },
    {
      "commit": "890111968fbd3f5ae528d97e42984c12a3dd27bd",
      "tree": "edb4ed38332a817b7d3037ea260856cec839dca9",
      "parents": [
        "0f13269734be07b5869005952a3cb91b0b34b73d"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 11 13:45:05 2017 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 11 15:43:45 2017 +0000"
      },
      "message": "Do not pass DexFile to ClassLinker::Lookup/ResolveMethod().\n\nThe DexFile can be easily retrieved from the DexCache,\nso reduce the number of arguments that need to be passed.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nChange-Id: I2e47280e7cb8b84595130c4abfb5ece18d7f5c75\n"
    },
    {
      "commit": "0f13269734be07b5869005952a3cb91b0b34b73d",
      "tree": "026115080385984050674455e54721f00cb5df10",
      "parents": [
        "768bd97cede0a6de738936aad738f8bb0099322e",
        "a64b52deb0c792b8a0d47546edb8a2f8a7816c33"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 11 14:24:43 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 11 14:24:43 2017 +0000"
      },
      "message": "Merge changes I8c4cec43,I00634b89,I0579db64\n\n* changes:\n  Do not pass DexFile to ClassLinker::Lookup/ResolveString().\n  Do not pass DexFile to ClassLinker::ResolveMethodType().\n  Do not pass DexFile to ClassLinker::ResolveField*().\n"
    },
    {
      "commit": "768bd97cede0a6de738936aad738f8bb0099322e",
      "tree": "4cd4514d207d8a8f4f0f8cf59ec10ca73e2eabd6",
      "parents": [
        "d13126d1ba8f65e483cd2e9dd18e60c9a0992c6e",
        "bfe2c6cc48cc56305c42c1d09bf03cf80f556a49"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Dec 11 13:25:58 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 11 13:25:58 2017 +0000"
      },
      "message": "Merge \"MIPS: Add missing include\""
    },
    {
      "commit": "a64b52deb0c792b8a0d47546edb8a2f8a7816c33",
      "tree": "0f98c035e2da07a17501debc4d1f49281d2f9e41",
      "parents": [
        "af94020190a2153834e30fc962e28c3b63d7ffc2"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 08 16:27:49 2017 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 11 11:40:35 2017 +0000"
      },
      "message": "Do not pass DexFile to ClassLinker::Lookup/ResolveString().\n\nThe DexFile can be easily retrieved from the DexCache,\nso reduce the number of arguments that need to be passed.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nChange-Id: I8c4cec43b31b27de7e4e94374fdd69c6d6ca6c13\n"
    },
    {
      "commit": "bfe2c6cc48cc56305c42c1d09bf03cf80f556a49",
      "tree": "4cd4514d207d8a8f4f0f8cf59ec10ca73e2eabd6",
      "parents": [
        "d13126d1ba8f65e483cd2e9dd18e60c9a0992c6e"
      ],
      "author": {
        "name": "Goran Jakovljevic",
        "email": "goran.jakovljevic@mips.com",
        "time": "Mon Dec 11 12:28:19 2017 +0100"
      },
      "committer": {
        "name": "Goran Jakovljevic",
        "email": "goran.jakovljevic@mips.com",
        "time": "Mon Dec 11 12:28:19 2017 +0100"
      },
      "message": "MIPS: Add missing include\n\nFollowing error has been generated due to missing include:\nart/runtime/arch/mips/entrypoints_init_mips.cc:288:27: error:\n    use of undeclared identifier \u0027systrace_lock_logging\u0027\n\nThis fixes aosp_mips-eng build.\n\nTest: successful aosp_mips-eng build\nChange-Id: I19920cbb7dd3d928352be95a06d5138d3d505bd0\n"
    },
    {
      "commit": "d13126d1ba8f65e483cd2e9dd18e60c9a0992c6e",
      "tree": "4f1189a912bb56bb1adb01219cf8e27b5442ef83",
      "parents": [
        "7f3b60825f6cfe20359b389708b9e98e6deb9924",
        "219cb9021fa74af7773066ffb8fc77ac85f3d0de"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 11 10:20:50 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 11 10:20:50 2017 +0000"
      },
      "message": "Merge \"Reduce memory allocations in dexlayout\u0027s CodeFixups.\""
    },
    {
      "commit": "7f3b60825f6cfe20359b389708b9e98e6deb9924",
      "tree": "d669406388612639a35c871601a8e048dcbb7ecc",
      "parents": [
        "1746b697a83357709ffdaa8c83a29de5b21d670e",
        "9c32ada693e810f5afad8a448a69fa8ea3f3934e"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Mon Dec 11 09:34:29 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 11 09:34:29 2017 +0000"
      },
      "message": "Merge \"jfuzz: Fix whitespace bogon\""
    },
    {
      "commit": "1746b697a83357709ffdaa8c83a29de5b21d670e",
      "tree": "f91ab5f598a9b35521aa93c4cd09f689358441bf",
      "parents": [
        "cb18123ce1ac4a27e354d402d4d6a684d2bf691e",
        "e82b60fabed960b36221665f090717695d7a9820"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Dec 11 09:14:43 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 11 09:14:43 2017 +0000"
      },
      "message": "Merge \"Update help message dump-timing -\u003e dump-timings.\""
    },
    {
      "commit": "9c32ada693e810f5afad8a448a69fa8ea3f3934e",
      "tree": "cf7c8976da59bd3197dc1a51546d15bf23a662b6",
      "parents": [
        "cb18123ce1ac4a27e354d402d4d6a684d2bf691e"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Mon Dec 11 07:24:43 2017 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Mon Dec 11 07:30:38 2017 +0000"
      },
      "message": "jfuzz: Fix whitespace bogon\n\nTest: mm\nChange-Id: I34763a786be01ec571ae121f49fe6e2bab3f8dcb\n"
    },
    {
      "commit": "cb18123ce1ac4a27e354d402d4d6a684d2bf691e",
      "tree": "11e42a8f3c851166054dd60acbc11e95843dffe9",
      "parents": [
        "078f96f743805d951cea8f71af768facd17eba78",
        "4a10c759d3dfe786e13bc1598ce683b38cf86340"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Dec 11 07:14:39 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 11 07:14:39 2017 +0000"
      },
      "message": "Merge \"jfuzz: Add try..catch..finally blocks\""
    },
    {
      "commit": "e82b60fabed960b36221665f090717695d7a9820",
      "tree": "5d902b18ac62539c4319ed86d1ec4c3032e2e69f",
      "parents": [
        "078f96f743805d951cea8f71af768facd17eba78"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sun Dec 10 21:50:10 2017 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sun Dec 10 21:50:10 2017 +0000"
      },
      "message": "Update help message dump-timing -\u003e dump-timings.\n\nTest: m\nChange-Id: I14fd14db7cad267cef42abab058de83bf0fcb980\n"
    },
    {
      "commit": "078f96f743805d951cea8f71af768facd17eba78",
      "tree": "96411090ad5066e29478d64aad47e5d0e34ab415",
      "parents": [
        "e38ff667621ca378daa5e3f104c8b1ac23102125",
        "5c6ff7d04131d048fce99eba32ed636b9a04669c"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sun Dec 10 15:13:51 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sun Dec 10 15:13:51 2017 +0000"
      },
      "message": "Merge \"Blacklist timing out test.\""
    },
    {
      "commit": "5c6ff7d04131d048fce99eba32ed636b9a04669c",
      "tree": "96411090ad5066e29478d64aad47e5d0e34ab415",
      "parents": [
        "e38ff667621ca378daa5e3f104c8b1ac23102125"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sun Dec 10 15:10:54 2017 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sun Dec 10 15:10:54 2017 +0000"
      },
      "message": "Blacklist timing out test.\n\nbug: 70459916\nChange-Id: Ieb5e41b21c1fcaac9dcf7b01ccca314ce783c6c8\n"
    },
    {
      "commit": "e38ff667621ca378daa5e3f104c8b1ac23102125",
      "tree": "0bce2756898d7db5764c15737ea0f3639ce490f2",
      "parents": [
        "368a828491a02047d4f8ab11d5f0b1ded1be67f0",
        "1344914b3029a02c6f991e6e541c48ad39828d06"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sat Dec 09 13:13:34 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Dec 09 13:13:34 2017 +0000"
      },
      "message": "Merge \"Don\u0027t check the offset of a NPE for field accesses.\""
    },
    {
      "commit": "368a828491a02047d4f8ab11d5f0b1ded1be67f0",
      "tree": "281bd456b2f8d863c039591b8fe5d419c0d73897",
      "parents": [
        "db97032b3849762db5fecf191c1f3b9fc1386483",
        "9b827ab7e63cf8b24987e75186434348d0dbf4e8"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Dec 09 03:28:01 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Dec 09 03:28:01 2017 +0000"
      },
      "message": "Merge \"ART: Clean up ATRACE use\""
    },
    {
      "commit": "db97032b3849762db5fecf191c1f3b9fc1386483",
      "tree": "3fc8a567e2c8157c54e9e59639ec12fdd0c3306a",
      "parents": [
        "f279b82ef8b8bd766ddcd23e68130e11c04be67d",
        "c654816053ae07fb1f129d705e94b76e59f37454"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Dec 08 23:40:10 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 08 23:40:10 2017 +0000"
      },
      "message": "Merge \"ART: Change SCOPED_TRACE implementation\""
    },
    {
      "commit": "f279b82ef8b8bd766ddcd23e68130e11c04be67d",
      "tree": "7d7a25a9b2a196064e39d33ce53a7ef1e6000705",
      "parents": [
        "8f1a586fd4ac9796e75b2b18638e39b33ad6e9a2",
        "dcd56c9116c2dc45b40b38fbb2a55c7e33a85a45"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Dec 08 23:14:45 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 08 23:14:45 2017 +0000"
      },
      "message": "Merge \"Add --cdex-fast and --cdex-none variant to testrunner\""
    },
    {
      "commit": "9b827ab7e63cf8b24987e75186434348d0dbf4e8",
      "tree": "7be2f4c9a19d809d8c77e2d516fbd2b62f41c672",
      "parents": [
        "c654816053ae07fb1f129d705e94b76e59f37454"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 07 19:32:48 2017 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Dec 08 12:22:36 2017 -0800"
      },
      "message": "ART: Clean up ATRACE use\n\nRemove old ATRACE_BEGIN \u0026 _END pairs, where possible. Remove\nATRACE_CALL and replace it with ScopedTrace.\n\nRemove utils/Trace.h include.\n\nTest: m\nChange-Id: I3a5123202f4e373074bfe0f7359ee6c60a70352a\n"
    },
    {
      "commit": "c654816053ae07fb1f129d705e94b76e59f37454",
      "tree": "867d678ab3f6e0f4af70da98e935aafae0c6126c",
      "parents": [
        "8f1a586fd4ac9796e75b2b18638e39b33ad6e9a2"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Dec 08 12:15:22 2017 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Dec 08 12:22:21 2017 -0800"
      },
      "message": "ART: Change SCOPED_TRACE implementation\n\nMove to a LOG-like usage pattern. This improves usability in the\npresence of lock annotations.\n\nDemonstrate in the JIT compiler, where a lambda would require\na REQUIRES_SHARED annotation.\n\nTest: m\nTest: manual\nChange-Id: I9da2bfb29ed11660dbeb6f114a3d6c7ffef3a26d\n"
    },
    {
      "commit": "8f1a586fd4ac9796e75b2b18638e39b33ad6e9a2",
      "tree": "f1970c938487dbd9e773619804612ac824b0721c",
      "parents": [
        "2ba3557b6d2ea65956f7a98e6f0fd921f35792a5",
        "170331f0e44a0e07fcfe0b5932517e0500f5cd1f"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Dec 08 19:28:07 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 08 19:28:07 2017 +0000"
      },
      "message": "Merge changes I917df597,Ib2ca880e,Ib3733573,I3e3a4672\n\n* changes:\n  ART: Remove base/logging from heap-inl.h\n  ART: Factor out gAborting\n  ART: Move runtime-debug flags to own files\n  ART: Replace base/logging with android-base/logging\n"
    },
    {
      "commit": "dcd56c9116c2dc45b40b38fbb2a55c7e33a85a45",
      "tree": "d245d2156e2638f587eec14d60e927645b81b42c",
      "parents": [
        "d5153627778e71ef68b510ce03c77467fa4d85bd"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Nov 20 20:30:24 2017 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Dec 08 10:56:08 2017 -0800"
      },
      "message": "Add --cdex-fast and --cdex-none variant to testrunner\n\nAdded --cdex-fast and --cdex-none variant options. These are passed\nto ART through the compact-dex-level option.\n\nBug: 63756964\nTest: test/testrunner/testrunner.py --host --cdex-fast -j40\nTest: Commented out header writing in compact_dex_writer.cc and confirmed tests fail.\n\nChange-Id: I408555b48286d2c4c5eca72e2cabe956aa1e9835\n"
    },
    {
      "commit": "af94020190a2153834e30fc962e28c3b63d7ffc2",
      "tree": "3f08bb09dd6d5ded7a6c85e812f1cba54ca83285",
      "parents": [
        "e11dd50ac2b5ccbf3b02213b7361f55b1f1a90da"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 08 15:01:18 2017 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 08 18:31:50 2017 +0000"
      },
      "message": "Do not pass DexFile to ClassLinker::ResolveMethodType().\n\nThe DexFile can be easily retrieved from the DexCache,\nso reduce the number of arguments that need to be passed.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nChange-Id: I00634b89013b7348460aa73561fa14be7c8cdb7e\n"
    },
    {
      "commit": "e11dd50ac2b5ccbf3b02213b7361f55b1f1a90da",
      "tree": "ea958df5f757369119cc84968f3b77210faf593f",
      "parents": [
        "2ba3557b6d2ea65956f7a98e6f0fd921f35792a5"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 08 14:09:45 2017 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 08 17:54:25 2017 +0000"
      },
      "message": "Do not pass DexFile to ClassLinker::ResolveField*().\n\nThe DexFile can be easily retrieved from the DexCache,\nso reduce the number of arguments that need to be passed.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nChange-Id: I0579db64c63afea789c7c9ad8db81e37c9248e97\n"
    },
    {
      "commit": "4a10c759d3dfe786e13bc1598ce683b38cf86340",
      "tree": "81bb0c326909863c454c070af68a2bf785db92d2",
      "parents": [
        "a9683fb824a12bc27819777fae0223b13f04ce43"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Dec 07 09:33:36 2017 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Dec 08 17:27:38 2017 +0000"
      },
      "message": "jfuzz: Add try..catch..finally blocks\n\nAdds try..catch..finally blocks to generated code.\n\nAlso adds invocations of a nop() function.\n\nBug: 69128828\nTest: Manually generating, dx\u0027ing, and verifying outputs\nChange-Id: I5e54d63e694acf8106c6deb966a584b9253001b6\n"
    },
    {
      "commit": "2ba3557b6d2ea65956f7a98e6f0fd921f35792a5",
      "tree": "5362f0306de9dfd47576b0988dc8b660ece0898b",
      "parents": [
        "f56a1c0abde24065f02705004cdc245f850e064a",
        "208f67072283be64da231b51f9c195aff403dceb"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 08 17:26:53 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 08 17:26:53 2017 +0000"
      },
      "message": "Merge \"Change ArtField::ProxyFindSystemClass() to lookup the class.\""
    },
    {
      "commit": "f56a1c0abde24065f02705004cdc245f850e064a",
      "tree": "6b5debfcb663f76e6a5bcb3949eec1bce891989e",
      "parents": [
        "f23779bc210ecbf448e61d7b18088b6afb46a476",
        "28e012a4af2d710e5e5f824709ffd6432e4f549f"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 08 17:26:18 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 08 17:26:18 2017 +0000"
      },
      "message": "Merge \"Determine HLoadClass/String load kind early.\""
    },
    {
      "commit": "208f67072283be64da231b51f9c195aff403dceb",
      "tree": "97748c71e6c16ae110ccdbb13f50a78e5a21cd33",
      "parents": [
        "4388fb213ec746ee18a6bea38ee894f8c19990b9"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 08 12:00:50 2017 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 08 16:50:21 2017 +0000"
      },
      "message": "Change ArtField::ProxyFindSystemClass() to lookup the class.\n\nAs the function is called from ArtField::LookupType(),\nwe should avoid calls that appear to allow type resolution\nrather than plain lookup. The lookup should always succeed.\n\nAlso rename ArtField::LookupType() to LookupResolvedType()\nto align with naming used in ClassLinker and ArtMethod.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nChange-Id: I0a87347b5341575e47e0fdba6d58ade2543387c8\n"
    },
    {
      "commit": "28e012a4af2d710e5e5f824709ffd6432e4f549f",
      "tree": "576ebdbff9d5f9f098cd29d652215b8f67b6b042",
      "parents": [
        "4388fb213ec746ee18a6bea38ee894f8c19990b9"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Dec 07 11:22:59 2017 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 08 15:27:27 2017 +0000"
      },
      "message": "Determine HLoadClass/String load kind early.\n\nThis helps save memory by avoiding the allocation of\nHEnvironment and related objects for AOT references to\nboot image strings and classes (kBootImage* load kinds)\nand also for JIT references (kJitTableAddress).\n\nCompiling aosp_taimen-userdebug boot image, the most memory\nhungry method BatteryStats.dumpLocked() needs\n  - before:\n    Used 55105384 bytes of arena memory...\n    ...\n    UseListNode    10009704\n    Environment      423248\n    EnvVRegs       20676560\n    ...\n  - after:\n    Used 50559176 bytes of arena memory...\n    ...\n    UseListNode     8568936\n    Environment      365680\n    EnvVRegs       17628704\n    ...\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing --jit\nBug: 34053922\nChange-Id: I68e73a438e6ac8e8908e6fccf53bbeea8a64a077\n"
    },
    {
      "commit": "1344914b3029a02c6f991e6e541c48ad39828d06",
      "tree": "d025bf698b8bc2bcbe5c5dbb181589fb4f363389",
      "parents": [
        "4388fb213ec746ee18a6bea38ee894f8c19990b9"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Dec 07 22:26:24 2017 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Dec 08 14:34:43 2017 +0000"
      },
      "message": "Don\u0027t check the offset of a NPE for field accesses.\n\nThe compiler might remove or reorder field accesses.\n\nbug: 70281892\nTest: 671-npe-field-opts\nChange-Id: I5430a7a938aef3636911694d48b19bb166be9d06\n"
    },
    {
      "commit": "f23779bc210ecbf448e61d7b18088b6afb46a476",
      "tree": "3a6c7cfa8a7c1772f8dc36a27119f107e18ebc42",
      "parents": [
        "b58739b160f19d6de0077865e71b19dd39eaac2f",
        "93592f53e35f01b54fbc84a7502b2e055ff6fe45"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Dec 08 13:26:26 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 08 13:26:26 2017 +0000"
      },
      "message": "Merge \"Fix VDEX header when no quickening info\""
    },
    {
      "commit": "b58739b160f19d6de0077865e71b19dd39eaac2f",
      "tree": "28f239aab4141db29253d49200ae0a2a601e391f",
      "parents": [
        "5449e076f6314fc21592a9e089258647f2750e9b",
        "6f1bd4611cfdb0387fb273f304a5008b07ba9145"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 08 12:46:47 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 08 12:46:47 2017 +0000"
      },
      "message": "Merge \"Extra debugging output for bug 64759619.\""
    },
    {
      "commit": "93592f53e35f01b54fbc84a7502b2e055ff6fe45",
      "tree": "b6cb0b5c41ecebc37adde7480282f368255e8c4a",
      "parents": [
        "5449e076f6314fc21592a9e089258647f2750e9b"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Dec 08 10:53:27 2017 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Dec 08 11:18:46 2017 +0000"
      },
      "message": "Fix VDEX header when no quickening info\n\nWhen there is no quickening info to be written, the OatWriter logic\nwrongly assumes that padding was written to align the file size to\n32 bits. The file is therefore shorter than the size calculated from\nheader data. This patch fixes that.\n\nAdditionally, it enforces that OatWriter::WriteQuickeningInfo is\nalways called, which was not the case with some of our tests. This\nrequirement was already mentioned in OatWriter comments but not\nadhered to.\n\nTest: m test-art-host-gtest\nBug: 70267762\nChange-Id: If25600761677efba173d7cac02931e71c6260f9d\n"
    },
    {
      "commit": "219cb9021fa74af7773066ffb8fc77ac85f3d0de",
      "tree": "2ecee11a4ad831c0f9f407e9a1240c5534b888e1",
      "parents": [
        "4388fb213ec746ee18a6bea38ee894f8c19990b9"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Dec 07 16:20:39 2017 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 08 11:08:54 2017 +0000"
      },
      "message": "Reduce memory allocations in dexlayout\u0027s CodeFixups.\n\nUsing heaptrack for the services.odex compilation of\naosp_taimen-userdebug:\n  - before: calls to allocation functions: 5032880\n  - after: calls to allocation functions: 4645378\n\nTest: Rely on TreeHugger\nBug: 70331349\nChange-Id: I477d5a84e0bf22994ce3de9fe56525de0b498801\n"
    },
    {
      "commit": "5449e076f6314fc21592a9e089258647f2750e9b",
      "tree": "b1f74c221456c93d2611b5eb3ece31b1130c7f20",
      "parents": [
        "f223f76bdd360664a1e8068eeac6ce35f7392bc6",
        "2dd7b672ea0afd7ea4448b43d24829e9886de3af"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Fri Dec 08 03:52:32 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 08 03:52:32 2017 +0000"
      },
      "message": "Merge \"Fixed spilling bug (visible on ARM64): missed SIMD type.\""
    },
    {
      "commit": "f223f76bdd360664a1e8068eeac6ce35f7392bc6",
      "tree": "d3d0a8f6cb7841b0052301d22963e1978ff0563f",
      "parents": [
        "d5153627778e71ef68b510ce03c77467fa4d85bd",
        "dfebbac8e30172169dbdaaf7e6a0be51433d57f1"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Dec 08 02:58:59 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 08 02:58:59 2017 +0000"
      },
      "message": "Merge \"ART: Add ScopedTrace constructor with lambda\""
    },
    {
      "commit": "dfebbac8e30172169dbdaaf7e6a0be51433d57f1",
      "tree": "3c751ff6792aaf88706fd0b3e0ed77d2cc4f83c2",
      "parents": [
        "92ab698e46dba3b6cff1457f47bfc344cb03f7ec"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Dec 06 14:17:22 2017 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Dec 08 02:54:45 2017 +0000"
      },
      "message": "ART: Add ScopedTrace constructor with lambda\n\nIn an effort to allow more complex and expensive atrace tagging,\nadd a ScopedTrace constructor that uses a passed-in lambda to\ncompute the string lazily.\n\nAdd a macro to simplify usage.\n\nTest: m\nChange-Id: I3b4576d786177042922fef0d05161e4cc11144d4\n"
    },
    {
      "commit": "170331f0e44a0e07fcfe0b5932517e0500f5cd1f",
      "tree": "4bb837aa3b6e19c898df23894beb61957885e985",
      "parents": [
        "39b378ca3b4b6dc6da1651b84ee4289cd9bff0f8"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 07 18:41:03 2017 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 07 18:41:03 2017 -0800"
      },
      "message": "ART: Remove base/logging from heap-inl.h\n\nHide the single uncommon VLOG and remove the include. Fix up\ntransitive includes.\n\nTest: m\nChange-Id: I917df597cb62c57040c1fb0e0079df4d95e5a658\n"
    },
    {
      "commit": "39b378ca3b4b6dc6da1651b84ee4289cd9bff0f8",
      "tree": "1da7bdc834fbc2f11243fa2b936f0d7a67d982c1",
      "parents": [
        "dcc528d2c7d5ac2cc075d4c965fdf702421d0f43"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 07 15:44:13 2017 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 07 16:26:11 2017 -0800"
      },
      "message": "ART: Factor out gAborting\n\nCut dependencies on base/logging.h by moving gAborting to its\nown header. Leave the static storage in logging.cc.\n\nTest: m\nChange-Id: Ib2ca880e15f9cb50cb9aab803784826bb46efb5e\n"
    },
    {
      "commit": "dcc528d2c7d5ac2cc075d4c965fdf702421d0f43",
      "tree": "e070070248facaf4c23f0ceb4a713de29b681462",
      "parents": [
        "57943810cfc789da890d73621741729da5feaaf8"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 07 13:37:10 2017 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 07 16:26:11 2017 -0800"
      },
      "message": "ART: Move runtime-debug flags to own files\n\nTo reduce the need for base/logging.h and separate out concerns.\n\nTest: m\nChange-Id: Ib373357325c6e622f608ada341594c3bea2fce2e\n"
    },
    {
      "commit": "57943810cfc789da890d73621741729da5feaaf8",
      "tree": "367677a982a45af98ffe3e79543615875e8550b4",
      "parents": [
        "d5153627778e71ef68b510ce03c77467fa4d85bd"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Dec 06 21:39:13 2017 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 07 16:26:11 2017 -0800"
      },
      "message": "ART: Replace base/logging with android-base/logging\n\nReplace wherever possible. ART\u0027s base/logging is now mainly VLOG\nand initialization code that is unnecessary to pull in and makes\nchanges to verbose logging more painful than they have to be.\n\nTest: m test-art-host\nChange-Id: I3e3a4672ba5b621e57590a526c7d1c8b749e4f6e\n"
    },
    {
      "commit": "2dd7b672ea0afd7ea4448b43d24829e9886de3af",
      "tree": "fd7e3c48f5ac17fc238bff68bf33e5868d1386dc",
      "parents": [
        "718173b7705ebc7f4a15aaaa4c074f9e5d907b31"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu Dec 07 11:11:22 2017 -0800"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu Dec 07 15:43:33 2017 -0800"
      },
      "message": "Fixed spilling bug (visible on ARM64): missed SIMD type.\n\nTest: test-art-host test-art-target\nChange-Id: I6f321446f54943e02f250732ec9da729f633c3a9\n"
    },
    {
      "commit": "d5153627778e71ef68b510ce03c77467fa4d85bd",
      "tree": "caa8e948783a357c6eb85ca7fe594ac8f2485c05",
      "parents": [
        "6c0122c6f97629bfd6d852ad428ea795d0f24491",
        "83a57108f41ad3e03c570d1d84df6bbd0dd0a14e"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu Dec 07 23:34:54 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 07 23:34:54 2017 +0000"
      },
      "message": "Merge \"Merged a few more ARM64/MIPS64 cases.\""
    },
    {
      "commit": "6c0122c6f97629bfd6d852ad428ea795d0f24491",
      "tree": "9e1647023703b33e3f098d0c6e7c851261716223",
      "parents": [
        "be83dddba9dca5dfa59e5e408bb57fe360b89d35",
        "3bcb751d0d2fa440809437a616e9326388600c8e"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Thu Dec 07 23:02:37 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 07 23:02:37 2017 +0000"
      },
      "message": "Merge \"type conversion elimination for store value only uses.\""
    },
    {
      "commit": "be83dddba9dca5dfa59e5e408bb57fe360b89d35",
      "tree": "1146aa6d673b38c81b551687bede8c0aeffed8d5",
      "parents": [
        "4388fb213ec746ee18a6bea38ee894f8c19990b9",
        "92d77208d7434f2c8c49aa368769165c4d33896f"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 07 21:20:12 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 07 21:20:12 2017 +0000"
      },
      "message": "Merge \"ART: Make kDebugVerifier a verbose flag\""
    },
    {
      "commit": "3bcb751d0d2fa440809437a616e9326388600c8e",
      "tree": "b5690b42f19f64442214b808e6760f021c63e0f5",
      "parents": [
        "4388fb213ec746ee18a6bea38ee894f8c19990b9"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Thu Nov 16 15:40:46 2017 -0800"
      },
      "committer": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Thu Dec 07 10:27:48 2017 -0800"
      },
      "message": "type conversion elimination for store value only uses.\n\nSome type conversions can be eliminated if the converted values are used\nas store values only. Code generation can handle the conversion\nimplicitly.\n\nTest: run-test on host. 711-checker-type-conversion.\nChange-Id: I60a402cf4610683acc5ca2ceba19045b4c17b843\n"
    },
    {
      "commit": "92d77208d7434f2c8c49aa368769165c4d33896f",
      "tree": "1146aa6d673b38c81b551687bede8c0aeffed8d5",
      "parents": [
        "4388fb213ec746ee18a6bea38ee894f8c19990b9"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Dec 06 20:49:00 2017 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Dec 06 21:48:47 2017 -0800"
      },
      "message": "ART: Make kDebugVerifier a verbose flag\n\nTo aid in debugging efforts, finally introduce a verifier-debug\nverbose-logging flag that takes over the compile-time kDebugVerifier\nflag.\n\nCollecting verification times from a well-known large app during\ndex2oat via dump-timings shows a difference in the noise.\n\nLogging of the steps is restricted to failure cases, to avoid\nspam.\n\nTest: m\nTest: m test-art-host\nTest: manual: dex2oat --runtime-arg -verbose:verifier-debug APK with failures\nChange-Id: Icb998cc42a531b80f20f986625869505271b7c98\n"
    },
    {
      "commit": "4388fb213ec746ee18a6bea38ee894f8c19990b9",
      "tree": "592a90855396854be93569bbe41b363971605b65",
      "parents": [
        "7869c87348dffba5bd5ef39f7fe74689bc19ae3c",
        "94539fde235a6dcd25af2560bb1fed5306f9f26d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 07 01:17:32 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 07 01:17:32 2017 +0000"
      },
      "message": "Merge \"Fix typing bug in load store elimination\""
    },
    {
      "commit": "7869c87348dffba5bd5ef39f7fe74689bc19ae3c",
      "tree": "4e7ff8aa8daccf308fa4e0bd6e4dc001805d855b",
      "parents": [
        "92ab698e46dba3b6cff1457f47bfc344cb03f7ec",
        "52f205a38bda70d5c63907ef354a1475b4237b21"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 07 01:05:02 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 07 01:05:02 2017 +0000"
      },
      "message": "Merge \"ART: Remove old aget on null workaround\""
    },
    {
      "commit": "94539fde235a6dcd25af2560bb1fed5306f9f26d",
      "tree": "13d62de65d0330107b9fd6f6f204459e580cc3d6",
      "parents": [
        "d57fdd82fccfa15933033646c9436313b399d528"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Nov 15 17:52:46 2017 +0000"
      },
      "committer": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Wed Dec 06 15:47:05 2017 -0800"
      },
      "message": "Fix typing bug in load store elimination\n\nTest: 530-checker-lse3\nBug: 69365271\nChange-Id: I2289bed5fc7b84ee913a2015d113098777dabd4c\n"
    },
    {
      "commit": "52f205a38bda70d5c63907ef354a1475b4237b21",
      "tree": "4e7ff8aa8daccf308fa4e0bd6e4dc001805d855b",
      "parents": [
        "92ab698e46dba3b6cff1457f47bfc344cb03f7ec"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Dec 01 12:16:07 2017 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Dec 06 14:13:21 2017 -0800"
      },
      "message": "ART: Remove old aget on null workaround\n\nUse null for an aget-object of null. Ensure that other aget types\non null cannot be converted to or used as a reference type.\n\nLet the verifier continue scanning after an aget on a null register,\nto ensure that the dead code is type-safe.\n\nAdd test coverage for the new behavior.\n\nPartially reverts commit 4824c27988c8eeb302791624bb3ce1d557b0db6c\nPartially reverts commit 857f058d4b7bd07c5c99eda416ad91516a10b4da\n\nBug: 22059710\nBug: 64683522\nBug: 69669661\nTest: m test-art-host\nChange-Id: Ie0b554e8f880251d8e73ab6dfb6b41a5e63defc6\n"
    },
    {
      "commit": "83a57108f41ad3e03c570d1d84df6bbd0dd0a14e",
      "tree": "ae115a1eb3189d049363aac489b39d8fbbfaa749",
      "parents": [
        "718173b7705ebc7f4a15aaaa4c074f9e5d907b31"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Wed Dec 06 10:32:15 2017 -0800"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Wed Dec 06 10:32:15 2017 -0800"
      },
      "message": "Merged a few more ARM64/MIPS64 cases.\n\nRationale:\nSomehow overlooked this in last pass.\nPlease let me know if you see others.\n\nTest: 660*-short?\nChange-Id: I702f21a504656a8a8e69619a28bcd1ba9f503990\n"
    },
    {
      "commit": "92ab698e46dba3b6cff1457f47bfc344cb03f7ec",
      "tree": "32e76364a018293f8217da8ea11b4dd15f3e3075",
      "parents": [
        "8d019b4e96edf9df628747c7474640513a483628",
        "718173b7705ebc7f4a15aaaa4c074f9e5d907b31"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Dec 06 18:07:10 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 06 18:07:10 2017 +0000"
      },
      "message": "Merge \"Fix races in trace_helper.cc\"\nam: 718173b770\n\nChange-Id: I6f86ef5bd9c0155b388f6b718e8726f1a2c79365\n"
    },
    {
      "commit": "6f1bd4611cfdb0387fb273f304a5008b07ba9145",
      "tree": "bb1aee2e0fa66d23945c32d0f57e172d82c82db3",
      "parents": [
        "f81cd8101067c71b67fe4ee265742aab83055aa5"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Dec 06 17:45:03 2017 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Dec 06 18:02:22 2017 +0000"
      },
      "message": "Extra debugging output for bug 64759619.\n\nDump the class loader chain and try to look for the\nreferenced class in class tables of that chain.\n\nTest: Modify code to trigger the crash, check output.\nBug: 64759619\nChange-Id: If3fe60a187ab3dfcc6acb61f5c1672706ae58870\n"
    },
    {
      "commit": "718173b7705ebc7f4a15aaaa4c074f9e5d907b31",
      "tree": "32e76364a018293f8217da8ea11b4dd15f3e3075",
      "parents": [
        "16e5e304226f676a1f0ac315949505af1db1ea59",
        "2743d756c5cdf1065740cc47d8b3af774157de00"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Dec 06 17:55:53 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 06 17:55:53 2017 +0000"
      },
      "message": "Merge \"Fix races in trace_helper.cc\""
    }
  ],
  "next": "8d019b4e96edf9df628747c7474640513a483628"
}
