)]}'
{
  "log": [
    {
      "commit": "0ae15326456aaab7717c09b07eaf2d766dbaadda",
      "tree": "b323ea082a55dacaf348ad3f687cec536b66997b",
      "parents": [
        "6b411fc9fd94da3c552d8b96cee14f6414e7b734"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu Sep 14 13:55:06 2017 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri Sep 15 10:22:18 2017 -0700"
      },
      "message": "tools: Add new titrace tool to print dynamic instruction counts\n\nImplemented on top of the Tooling Interface (jvmti.h) and works on both\nRI and ART (host/target). See README.md for more details.\n\nExample usage:\n\n$\u003e make libtitrace\n$\u003e java -agentpath:out/host/linux-x86/lib64/libtitrace.so helloworld\n  Hello\n  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n                 TI Trace // Summary\n  ++++++++++++++++++++++++++++++++++++++++++++++++\n     * Single step counter: 405982\n  +++++++++++    Instructions Count   ++++++++++++\n     * aconst_null(op:1), count: 734, % of total: 0.180796\n     * iconst_m1(op:2), count: 470, % of total: 0.115769\n     * iconst_0(op:3), count: 4246, % of total: 1.04586\n     * iconst_1(op:4), count: 3585, % of total: 0.883044\n     * iconst_2(op:5), count: 1068, % of total: 0.263066\n     ............\n\nTest: manual\nChange-Id: I0cd1f4f88e54cf8612641128230b8e93157b48ea\n"
    },
    {
      "commit": "06c42a571358b5e5adb69104b183af8f32f4c07d",
      "tree": "7b218fdb67fef74cdcbc2e3665757485ef89918b",
      "parents": [
        "7f14c2ec37c70010d99cab6806d85018df56c555"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jul 26 14:17:14 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jul 31 07:38:43 2017 -0700"
      },
      "message": "ART: Move openjdkjvmti to art/\n\nMove libopenjdkjvmti out of the runtime directory. Let\u0027s not\npollute the runtime library.\n\nTest: m test-art-host\nChange-Id: Idb6b9cebcd61777bd3200437a2ae584a63a4a341\n"
    },
    {
      "commit": "ae616fa0e828cd6cbbae53edf3cf14338ad49dd9",
      "tree": "eb6effbc6bf015c98425f6cf5d99149339b40e8f",
      "parents": [
        "54c1afa173509608085ab63931b82f72ae4b52e1",
        "5d15e6cacd82a3983295e6c3fc03626006baaf70"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jul 27 15:48:11 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jul 27 15:48:11 2017 +0000"
      },
      "message": "Merge \"ART: Move openjdkjvm to art/\""
    },
    {
      "commit": "5d15e6cacd82a3983295e6c3fc03626006baaf70",
      "tree": "55070efc62a05017a279214533fc04635aebc90d",
      "parents": [
        "92b601462ffced04bd66e6ce47097664c746a34c"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jul 26 12:57:41 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jul 26 12:57:41 2017 -0700"
      },
      "message": "ART: Move openjdkjvm to art/\n\nMove libopenjdkjvm out of the runtime directory. Let\u0027s not\npollute the runtime library.\n\nTest: m test-art-host\nChange-Id: I3864c97c749fd791ab1b43173c2580872cf0d57d\n"
    },
    {
      "commit": "71da4878f2e3f0dc8b7c3a31b4f57172fde5f378",
      "tree": "ae560b5e56ce09cfaaf1f3c04e96366f193c4180",
      "parents": [
        "b22ae40038aeeebb16936fbf62b48f080d6e7ef4"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jul 26 10:02:07 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jul 26 11:23:03 2017 -0700"
      },
      "message": "ART: Move simulator to art/\n\nMove the simulator library out of the runtime directory. Let\u0027s not\npollute the runtime library.\n\nTest: m\nChange-Id: I351a0061ae628c3af0462b72d4de727db296ec23\n"
    },
    {
      "commit": "36eb313c805713c1367e5b9d73897ade1c24174b",
      "tree": "a2485977f12299a493217ead13a0cb5510c4251d",
      "parents": [
        "d713d29507fb98bea3eee9277f05422a9b641ca1"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Jan 13 16:32:38 2017 -0800"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Jan 24 11:29:34 2017 -0800"
      },
      "message": "Add dexoptanalyzer tool\n\ndexoptanalyzer is a command line tool which analyzes whether or not a\ngiven dex file needs to be dexopted. It is a wrapper around\nOatFileAssistant::GetDexOptNeeded and its results have a mapping to\nOatFileAssistant::DexOptNeeded.\n\nThis is needed for the management of secondary dex file. We need a way\nto retrieve the DexOptNeeded status from installd outside system server.\nWe can\u0027t simply use the system server path (as we do for the main apks)\nbecause system server can\u0027t access content writable by the apps.\n\nBug: 32871170\nTest: m test-art-(host|target)\nChange-Id: Ife1534560ca2658079d4a38a30bc8d94f35fe9c8\n"
    },
    {
      "commit": "6e95dd56e43b3a29fb8360bd94e31cd2eaab1d3d",
      "tree": "c536c5588f8a96f4559ca00921c7852a82558ea5",
      "parents": [
        "6b22aa5106e60545119b9eeaceaa9f87ee597305"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Sep 12 15:37:10 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Sep 15 12:27:06 2016 -0700"
      },
      "message": "Convert art gtests to Android.bp\n\nThis splits the compilation and running of the art gtests into two\nseparate locations.  The tests are now compiled in multiple Android.bp\nmodules in each directory.  art.go collects the installed locations of\neach test and exports it as make variables.  art/build/Android.gtest.mk\nconverts the list into the rules to run the tests.\n\nThis has a few changes in behavior:\n  - The rules to build tests are now always defined, and will build as\n    part of mmma art or make checkbuild.\n  - Host tests are no longer installed into out/host/linux-x86/bin, they\n    are in out/host/linux-x86/nativetest[64]/\u003cmodule name\u003e/\u003ctest name\u003e\n  - Target tests are now in\n    /data/nativetest[64]/art/\u003carch\u003e/\u003cmodule name\u003e/\u003ctest name\u003e\n\nTest: mmma -j art\nTest: m -j test-art-host\nTest: m -j test-art-target\nChange-Id: Iabcd99d43890e6b693688422b07a283c3226a496\n"
    },
    {
      "commit": "6b22aa5106e60545119b9eeaceaa9f87ee597305",
      "tree": "ab26f42ac9fb9fff52c6f0683561c0bcdebd9569",
      "parents": [
        "6b4d988feb18559204f7175914851baf28febd8c"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Sep 12 14:35:39 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Sep 15 12:24:25 2016 -0700"
      },
      "message": "Convert libart-gtest to Android.bp\n\nChange-Id: Ibea17e3e002e6ad3f82158cd3c69d087fa9b15c9\n"
    },
    {
      "commit": "c7376e0f8002d7838c3d69569028fbc9b91a38f3",
      "tree": "c325af4f653255d5957cd16463afbe880d5cdb0d",
      "parents": [
        "47b451546d1a5c0fbb5e3816373395762a736515"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Sep 08 12:52:18 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Sep 12 16:29:02 2016 -0700"
      },
      "message": "Convert more of art to Android.bp\n\nConvert dex2oat, imgdiag, patchoat, and profman to Android.bp.\n\nTest: m -j test-art-host\nTest: mmma -j art\nChange-Id: If2acd47189e5a944732c2c00c2bf31265f887161\n"
    },
    {
      "commit": "fe6064ae8b861f1290aa793ce0de219781da6a10",
      "tree": "a24da585adbafc5932e4c3aab07f0e1d9a639628",
      "parents": [
        "090a5da3a7f320b9d2aa9fa461efc11a7eb39392"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Aug 30 13:49:26 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Sep 08 11:00:53 2016 -0700"
      },
      "message": "Convert more of art to Android.bp\n\nRelanding I1b10f140e17dd5e12a9d7f6a29d47cf61f5bf6ef, with fixes to\ncompile dalvikvm32 and dalvikvm64, and add them as dependencies of\ntests.  Also fixes HOST_PREFER_32_BIT by moving the override from the\ndefaults, which are not used by everything in art, to the art_cc_binary\nmodule type.\n\nTest: rm -rf out/host; m -j HOST_PREFER_32_BIT test-art-host; m -j test-art-host\nChange-Id: I64d3eef5080e128103d052497760c3521cc253c6\n"
    },
    {
      "commit": "1a861719fdadf1a27cf7df9955311cc7d4d4c217",
      "tree": "c15c6f0b213845b20a0bae8b900940a4eecdd3f5",
      "parents": [
        "e251b1204f678919e37da32667fab2c5bbcbbb76"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Sep 07 00:16:35 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Sep 07 00:17:20 2016 -0700"
      },
      "message": "Revert \"Convert more of art to Android.bp\"\n\nThis reverts commits 4a456275e25c536f525b6c020ca38c8ada8a05de and\n198a957915eb75c5f837ea57d385aa6cfa69f76e.\n\nChange-Id: Ibe49f611ae3ed7748bcfc9ac07f8d1f52d6bea3a\n"
    },
    {
      "commit": "4a456275e25c536f525b6c020ca38c8ada8a05de",
      "tree": "f30cb1bbca4dbacc264409ae408a740f2c4dd04d",
      "parents": [
        "9d185da3bef8caf015d3dbf4ad79c520af7ce3b1"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Aug 30 13:49:26 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Sep 06 12:15:24 2016 -0700"
      },
      "message": "Convert more of art to Android.bp\n\nChange-Id: I1b10f140e17dd5e12a9d7f6a29d47cf61f5bf6ef\n"
    },
    {
      "commit": "1f7f3bd26ecad4366c904b7e7d05587fc7a83ea2",
      "tree": "73f5c720f744303bc8ae9dad0891264f4788767a",
      "parents": [
        "521691ae4dfad47cf6b46858347fa5fa32fd7bcc"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Jul 27 10:12:38 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Aug 25 13:42:11 2016 -0700"
      },
      "message": "Convert libart and dependencies to Android.bp\n\nRe-landing I73839046a5a53eb34cd28eea53149911c568e411, with fixes for mac\nbuild (only apply -Wl,--keep-unique to device x86 builds), typo in\nchecking for ART_HEAP_POISONING environment variable, and removing\n-Wframe-larger-than for debug builds.\n\nTest: mma -j, m -j test-art-host\nChange-Id: If88492174cbcb0d9a8758176c006163a29eaaa63\n"
    }
  ]
}
