)]}'
{
  "log": [
    {
      "commit": "41b605c5ad4b06ea127ac56c6e3a4c92e8913efd",
      "tree": "f7b28eb11051f3faada99c11dc594cccd34a5786",
      "parents": [
        "30b38f8d01cdb4c80092638f23c61d73e0d287f4"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Feb 12 10:52:22 2020 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Feb 14 12:01:58 2020 +0000"
      },
      "message": "Remove MIPS support from runtime/.\n\nTest: aosp_taimen-userdebug boots.\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 147346243\nChange-Id: If1fc8be94caa69f734438d7a1f4c715addfd8876\n"
    },
    {
      "commit": "765b2a04576f4e985a88165456f5ee55cdfe56b8",
      "tree": "1eb91d1e6dcdee31b5b396ee0ed8baf8c94aca96",
      "parents": [
        "023533677989028d48f4e64dad0a5b3b4e59b726"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu May 02 11:04:13 2019 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri May 03 19:46:42 2019 +0000"
      },
      "message": "Add -verbose:interpreter\n\nAdds a mode to track what methods are being interpreted. Good\nfor debugging interpreter usage during app startup.\n\nBug: 130185360\nTest: test-art-host\n\nChange-Id: I8119f79e534cdad7d6a72d4f01115a288e9c8d9a\n"
    },
    {
      "commit": "bb2467b398481a15ddb0b65cfcf3c15ff3cb0b8d",
      "tree": "1fb58f57d31e0adb6e5b3170a45de16d3e5179f0",
      "parents": [
        "7c887c57b1b32b9432c74582ab9a4be43a280ee9"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Fri Mar 29 22:55:06 2019 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Sat Apr 20 00:52:14 2019 +0000"
      },
      "message": "Make kHugeNativeAllocs configurable\n\nAdd -XX:StopForNativeAllocs command line argument to replace\nkHugeNativeAllocs constant.\n\nThe default remains at 1 GB. But This default will allow small\nmemory devices to run out of memory if we allocate Java owned native\nmemory faster than what the GC can keep up with. Setting it to\na smaller value should prevent that.\n\nBug: 122552730\nTest: Boot AOSP, Treehugger\n\nChange-Id: I5c84b2f1f67038e1b7a0ca3f5fc08090359c5f3e\n"
    },
    {
      "commit": "b9c29f625bc27968d80f9eafa988dc14af0a1c28",
      "tree": "10276cd3fa756646b41cb50cf396476f2f8df1d3",
      "parents": [
        "bcd99bed472d228a1a0a65adc606346d7daf6b93"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Mar 20 14:22:51 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Mar 25 10:27:28 2019 +0000"
      },
      "message": "Hide conscrypt package classes for app AOT compilation.\n\nSince app AOT compilation is usually done without conscrypt\non the boot class path, classes defined by app class loader\nin conscrypt packages could be resolved differently, i.e.\nfrom conscrypt, at runtime. Reject such definitions during\nAOT compilation to ensure correct runtime behavior.\n\nAdd a test that when compiling the conscrypt module as an\napp, we cannot resolve any class defined in its dex files.\n\nTest: module_exclusion_test\nBug: 122937705\nChange-Id: I1fcb4c21937f59772206ee50b688a75053231bc0\n"
    },
    {
      "commit": "0b4d146d628b359962db969c6138b18a1bcf49a9",
      "tree": "9aa05caed1a3540cc497bb6289fcd0473f96b6fe",
      "parents": [
        "3c29c66933f81dbb9af17caa197257ac67ee3c78"
      ],
      "author": {
        "name": "Albert Mingkun Yang",
        "email": "albertnetymk@google.com",
        "time": "Thu Nov 29 13:25:35 2018 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Jan 18 16:32:55 2019 +0000"
      },
      "message": "ART: make generational CC a runtime option\n\nAdd -Xgc:[no]generational_cc option to control whether generational\nConcurrent Copy collector is enabled when art is launched.\n\nRepurpose the environment variable and preprocessor macro name\n`ART_USE_GENERATIONAL_CC` to selecting the default behavior (if unset,\nthe default is to use Generational CC collection by default).\n\nTest: Run art with -Xgc:[no]generational_cc along with -XX:DumpGCPerformanceOnShutdown on some benchmarks to see if minor GC runs. parsed_options_test is updated to test this new option.\nTest: make test-art-host-gtest-parsed_options_test\nTest: make test-art-target-gtest-parsed_options_test\nBug: 112187497\nBug: 67628039\nChange-Id: I6b4660b06f7e793911a2601bed24c33777190741\n"
    },
    {
      "commit": "91f1032505cfaec3aef51fc0a3085b213813f0ed",
      "tree": "6469e772d9fb562d26dc1d22dd0b71844bbb743f",
      "parents": [
        "573b3877fac3c5a4a9703301502694fe7219b21c"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 07 18:04:10 2018 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 07 18:13:55 2018 +0000"
      },
      "message": "Revert^2 \"Pass boot class path to ImageSpace::LoadBootImage.\"\n\nThis reverts commit db4b1deebf425be5f1d0f597d1ef540f19908324.\n\nFixed JDWP tests, see \"Test:\" stanzas below.\n\nChange-Id: I6fb56ac990b78164cbd3f93c9f6df66e0dd9a813\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: Pixel 2 XL boots.\nTest: m test-art-target-gtest\nTest: testrunner.py --target --optimizing\nTest: run-libcore-tests.sh --mode\u003ddevice --variant\u003dX64\nTest: run-jdwp-tests.sh --mode\u003dhost --variant\u003dX64\nTest: run-jdwp-tests.sh --mode\u003ddevice --variant\u003dX64\nBug: 119868597\n"
    },
    {
      "commit": "db4b1deebf425be5f1d0f597d1ef540f19908324",
      "tree": "5851aab8a4d71b49dbd272b822bfd1ae2cbd08df",
      "parents": [
        "e3c6dfe2009d2fad6f8e4401cb17935bdd09ab9e"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 07 17:18:07 2018 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 07 17:23:26 2018 +0000"
      },
      "message": "Revert \"Pass boot class path to ImageSpace::LoadBootImage.\"\n\nThis reverts commit d19085141ad9c71eae1b0ff585999ac8e27dadd4.\n\nAlso squash a revert of\n    Fix oatdump tests on target.\n    (commit 77eea0898aca2881a87afd177a0422870c39a318)\n\nReason for revert: Broke JDWP tests.\nBug: 119868597\nChange-Id: I005097d2d96014c961e5a4c0b089e7675004febc\n"
    },
    {
      "commit": "d19085141ad9c71eae1b0ff585999ac8e27dadd4",
      "tree": "24284e84f5df4601bacc2a97c56af1bc5950c253",
      "parents": [
        "523940b40f9701504d6e007dd2af48f315038dc1"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Nov 22 14:57:28 2018 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Dec 06 14:43:07 2018 +0000"
      },
      "message": "Pass boot class path to ImageSpace::LoadBootImage.\n\nWhen loading the boot image by ImageSpace, do not rely on\nthe boot class path (BCP) recorded in the primary boot image\noat file. Instead, check the BCP from image against the BCP\nprovided by the Runtime, i.e. from -Xbootclasspath:_ or the\nenvironment variable BOOTCLASSPATH. For now, allow Runtime\nto extract the BCP from the primary boot image oat file when\nwe have -Ximage:_ but no BCP.\n\nAlso pass the boot class path components down to the OatFile\nso that we can open and use the original dex files when we\ndo not have copies in the vdex files. This allows compiling\napp prebuilts when the boot dex files are uncompressed and\naligned in the original jars.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: Pixel 2 XL boots.\nTest: m test-art-target-gtest\nTest: testrunner.py --target --optimizing\nTest: run-libcore-tests.sh --mode\u003ddevice --variant\u003dX64\nTest: Manually create boot image jars with uncompressed and\n      aligned dex files, compile a boot image with dex files\n      not copied into vdex files and use this boot image for\n      compiling a prebuilt services.{art,vdex,odex}.\nBug: 119868597\nChange-Id: If9411ddbecf6bb90bfa9233040931c5e833f6aee\n"
    },
    {
      "commit": "26c43778589d1c7598cbe6203b6545c9d3ab220a",
      "tree": "474167d306678366b1c90c7a9e6f824308ec7f7a",
      "parents": [
        "c89a28730fb8dff57c6cb5b18295fec45fe85d09"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Fri Nov 23 17:56:43 2018 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Dec 03 20:05:09 2018 +0000"
      },
      "message": "Add support for ANDROID_RUNTIME_ROOT variable\n\nThis commit introduces the ANDROID_RUNTIME_ROOT environment\nvariable in preparation for its use within the runtime module.\n\nAs a module, ART must no longer use the Android-wide\nANDROID_ROOT environment variable as the base of default\npaths for module content. ANDROID_RUNTIME_ROOT will take over\nthe responsibility. It remains a variable to unify host\nand device treatment.\n\nSome test methods (SetUpAndroidData, TearDownAndroidData\nSetUpAndroidRoot) have been renamed to clarify their purpose.\n\nBug: 119935277\nTest: build / treehugger\nChange-Id: I7c7de52911cbfa56cef90270425ed369176c4767\n"
    },
    {
      "commit": "f8e5d8ce6cdd9048dc8e67f7343d3842189f7601",
      "tree": "4b79373ad7c6b5934f1bf6d0fd5353c7067f8c60",
      "parents": [
        "faa7b29f1e0c311e42ab5a265cb1b17036ca5a10"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Apr 06 13:35:37 2018 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Apr 06 13:55:41 2018 -0700"
      },
      "message": "Delete MarkCompact GC\n\nTest: test-art-host\nBug: 77721758\nChange-Id: I99889353eb97f46c59de7ed44f2944f83867031d\n"
    },
    {
      "commit": "46ee31b67d7ee1bd085fbc240502053caa3cf8fa",
      "tree": "83e870f293cd60d533207e389d7b094acd87b31f",
      "parents": [
        "9538f9e2a5d03f1b1bc07ebfbd93b61dcf8ad604"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Dec 14 10:11:49 2016 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 15 09:50:39 2016 -0800"
      },
      "message": "ART: Move to libbase StringPrintf\n\nRemove ART\u0027s StringPrintf implementation. Fix up clients. Add\nmissing includes where necessary.\n\nTest: m test-art-host\nChange-Id: I564038d5868595ac3bb88d641af1000cea940e5a\n"
    },
    {
      "commit": "f1e91bfa95d04c94d82baea605533fa3f9e0268f",
      "tree": "498ca5e4627971e033f7855f2e5cf186c8ce60c2",
      "parents": [
        "e38c254052b3f2f4f4b283079f070c024d86dc63",
        "db2980ae9eca19a577df27b1f05912ed482fb88c"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Dec 18 01:49:38 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Dec 18 01:49:38 2015 +0000"
      },
      "message": "Merge \"ART: Refactor CommonRuntimeTest::SetUp\" am: fae1db92d8\nam: db2980ae9e\n\n* commit \u0027db2980ae9eca19a577df27b1f05912ed482fb88c\u0027:\n  ART: Refactor CommonRuntimeTest::SetUp\n"
    },
    {
      "commit": "a00f012660e9a4baa34c0ab96042f7146e9a6017",
      "tree": "7091c01a3119a2353884c592956279252386c890",
      "parents": [
        "cbf8af898e758cef27687c20c8cf9ac75280026d"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Dec 16 16:54:35 2015 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 17 10:41:13 2015 -0800"
      },
      "message": "ART: Refactor CommonRuntimeTest::SetUp\n\nFactor out finishing up the runtime. This code will execute the\ninterpreter to initialize important classes etc., which is not\nnecessary for testing RuntimeMethod sizes and trampoline entrypoints,\nin fact it may violate pointer-size invariants.\n\nAlso add InstructionSet parsing tests to the ParsedOptions test.\n\nChange-Id: I75cd00c6d358e1bc962c8f1845244f6400c1cd6c\n"
    },
    {
      "commit": "a3f245d4e90bdd5f54563c56322105e6ffe1f48f",
      "tree": "e10b9410dc31da6face039534aa785475c2eaa8f",
      "parents": [
        "03e77ecbc48831290166479d445ffc0350110b48",
        "1660132f6885de43ee469c38aefc8214b48d89bd"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Dec 16 07:32:10 2015 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 16 07:32:10 2015 -0800"
      },
      "message": "Merge \"Revert \"Revert \"Introduce support for hardware simulators, starting with ARM64\"\"\" am: 4741516396\nam: 1660132f68\n\n* commit \u00271660132f6885de43ee469c38aefc8214b48d89bd\u0027:\n  Revert \"Revert \"Introduce support for hardware simulators, starting with ARM64\"\"\n"
    },
    {
      "commit": "4741516396e9dbfb3afc2c1d8241a7e4e26a6302",
      "tree": "5b828a40c6a4342e4a3fbe995560df014db8fa81",
      "parents": [
        "7f3b38cc23b638ab84ac01a94e90f0456da3b688",
        "751beff19b36f777d9e3a966d754fd9cfad5d534"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Dec 16 15:21:25 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 16 15:21:25 2015 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Introduce support for hardware simulators, starting with ARM64\"\"\""
    },
    {
      "commit": "8701fc20130939b9a11f801992607daee7f70871",
      "tree": "e998ab6d3aab4e8dfd36f999ca216b07eecb609e",
      "parents": [
        "7c21c7cb329990fed53e9878ef2479e3009bf286",
        "0b81f1715d6af9f98f982d6511e48973aa5a836a"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Dec 08 16:25:47 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 08 16:25:47 2015 +0000"
      },
      "message": "Merge \"Allow initializing runtime with parsed options.\" am: e0d25b156e am: 2433d4e17c\nam: 0b81f1715d\n\n* commit \u00270b81f1715d6af9f98f982d6511e48973aa5a836a\u0027:\n  Allow initializing runtime with parsed options.\n"
    },
    {
      "commit": "88b2b80aed15bb1f931cddd40e44ca525ef10018",
      "tree": "04b2f9d27863cd469dae8050335f197496f24ff2",
      "parents": [
        "cf6bd55863ded11e0533966657871aca444505a5"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 04 14:19:04 2015 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 07 12:38:21 2015 +0000"
      },
      "message": "Allow initializing runtime with parsed options.\n\nNeeded by upcoming refactoring of dex2oat to allow\nearly writing of dex files to the oat file.\n\nChange-Id: Ia13c26132846801522f181f51f64035d625e8416\n"
    },
    {
      "commit": "d1ef4362bf799f9f5d50e5edef8433664b503051",
      "tree": "59aaa140925efa790f787d5e1caf6d0cafd6ae15",
      "parents": [
        "e4cf5892c2a244034900d49499c071b255571bba",
        "f32e8327da5dd33abe18662fbca5e584cd047816"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Thu Nov 12 11:49:06 2015 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Thu Nov 12 11:52:42 2015 +0000"
      },
      "message": "Merge lmp changes into mnc.\n\nMost merge conflicts are due to changes in the string representation.\nThey have been resolved in favour of \"mnc-dev\" since we\u0027ve changed\nthe string representation there. Other changes relate to the\nfact that there are now two jars in libcore (core-oj and core-libart).\n\nChange-Id: I1fcc6e5f8dab8d1954dcddca0493563e7677d433\n"
    },
    {
      "commit": "5b8e6e36e96d6d1921dd356fa46191d1e6a18082",
      "tree": "33d66d1cb3377447aa687ee4625c5826370d1e85",
      "parents": [
        "be26f77dac06fb02b0cc80914b740662bf8d0b26"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Wed Sep 30 14:40:33 2015 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Thu Nov 12 10:15:58 2015 +0000"
      },
      "message": "Fix for gtest missing core classes, attempt 2\n\ncommon_runtime_test loads both core-libart and\ncore-oj\n\nChange-Id: I8a4d5750b99aed2e500cad89b841a57fe9c1ca69\n"
    },
    {
      "commit": "751beff19b36f777d9e3a966d754fd9cfad5d534",
      "tree": "450cb7ef8cb9f955a6d689c394bd85bc9eea14f1",
      "parents": [
        "4bbe7807f313bb8e59131812c31bf31513094f8f"
      ],
      "author": {
        "name": "Phil Wang",
        "email": "phil.wang@linaro.org",
        "time": "Fri Aug 28 15:17:15 2015 +0800"
      },
      "committer": {
        "name": "Phil Wang",
        "email": "phil.wang@linaro.org",
        "time": "Fri Nov 06 14:44:20 2015 +0800"
      },
      "message": "Revert \"Revert \"Introduce support for hardware simulators, starting with ARM64\"\"\n\nThis reverts commit 4cd27d64b0bbdde61fa3f6674ceb24221853ac2c.\n\nThis depends on VIXL 1.11.\n\nChange-Id: I402c1fd6bbb218ba80ef8e59af203c9276151059\n"
    },
    {
      "commit": "b1d8c314b55bb2df2b2bb72a3daaf5db65b7ebc7",
      "tree": "87e8252ee6ca23138f867989a098b7c4338c21a5",
      "parents": [
        "1d558db0bcd841140f6fe1c6ba2e9a6de131649d"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue Aug 04 11:18:43 2015 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue Aug 04 11:19:56 2015 -0700"
      },
      "message": "Revert \"cleanup: Replace pointers with out-parameters and fix-up formatting\"\n\nThis reverts commit a315f5c546b796f55f4872bb6efc15eb858d9639.\n\n--\n\nRevert \"runtime: cleanup class_linker out-parameters and formatting\"\n\nThis reverts commit bc1d78daa463572c5a770cdca858a3b51d8e1b7b.\n\n--\n\nRevert \"base: replace raw pointers for out-parameters with safer out\u003cT\u003e\"\n\nThis reverts commit fb326cffc679cab8eb873b9e44795706f023cb3c.\n"
    },
    {
      "commit": "a315f5c546b796f55f4872bb6efc15eb858d9639",
      "tree": "188bcbab728423d79147fd9d9da45c2539371ac5",
      "parents": [
        "bc1d78daa463572c5a770cdca858a3b51d8e1b7b"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri Jul 31 17:35:52 2015 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri Jul 31 17:35:52 2015 -0700"
      },
      "message": "cleanup: Replace pointers with out-parameters and fix-up formatting\n\nCleans all of oat_file.h/.cc, parsed_options.h./cc, runtime.h/.cc\n\nOther files are touched only incidentally to use outof(x) instead of \u0026x.\n\nChange-Id: I0bb15111149d53bb21aac2199ef33bd35333b0ca\n"
    },
    {
      "commit": "2cebb24bfc3247d3e9be138a3350106737455918",
      "tree": "d04d27d21b3c7733d784e303f01f873bb99e7770",
      "parents": [
        "1f02f1a7b3073b8fef07770a67fbf94afad317f0"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Apr 21 16:50:40 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Apr 22 12:44:27 2015 -0700"
      },
      "message": "Replace NULL with nullptr\n\nAlso fixed some lines that were too long, and a few other minor\ndetails.\n\nChange-Id: I6efba5fb6e03eb5d0a300fddb2a75bf8e2f175cb\n"
    },
    {
      "commit": "2798da180524dde1f923b4ee964877546bd6bb44",
      "tree": "9636c049c56402a7cc0196ff3657a8c8ec1322a0",
      "parents": [
        "6e27f82193a8f54cd8ecdc8fb2c4c1adadafbaf4"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri Feb 06 17:59:39 2015 -0800"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue Feb 17 10:57:35 2015 -0800"
      },
      "message": "art: Fix bug in VariantMap::Set\n\nBug: 19295410\nChange-Id: I7827583846d710698c0e7bc0ec1a2c3bf901bd50\n"
    },
    {
      "commit": "eb6c7c23a8065af665e71f3408980bacd8ecc529",
      "tree": "b1eda7fb58ca02d9539c27774ef2bb044b9369f0",
      "parents": [
        "edf45678f133ce51d7aff43be68d9be3936ffca2"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed Feb 04 17:30:43 2015 -0800"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed Feb 04 17:32:05 2015 -0800"
      },
      "message": "art: Try to fix parsed_options_test on the build server\n\n(It works fine locally because environment variables are defined\ndifferently)\n\nAlso some minor cleanup elsewhere pointed out in the previous code\nreview.\n\nChange-Id: I80650d2be6ce467b838db85eb130a0020d7c1480\n"
    },
    {
      "commit": "aaebaa0121be3b9d9f13630585304482cbcaeb4b",
      "tree": "0f47257e497fdf920c8d703d2d00adab53934a76",
      "parents": [
        "babecc483276b46d84cb83d4f01e577228827305"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Mon Jan 26 10:55:53 2015 -0800"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed Feb 04 13:29:19 2015 -0800"
      },
      "message": "art: Refactor RuntimeOptions/ParsedOptions\n\nRefactor the RuntimeOptions to be a\ntype-safe map (VariantMap, see runtime_options.h) and the ParsedOptions\nto delegate the parsing to CmdlineParser (see cmdline/cmdline_parser.h).\n\nThis is the start of a command line parsing refactor, and may include\nmore in the future (dex2oat, patchoat, etc).\n\nFor more details of the command line parsing generator usage see cmdline/README.md\n\nChange-Id: Ic67c6bca5e1f33bf2ec60e2e3ff8c366bab91563\n"
    },
    {
      "commit": "647b1a86f518d8db0331b3d52a96392b7a62504b",
      "tree": "7370f795ef3c7fbdd2695d23bc6f8171f40f43f1",
      "parents": [
        "acfbbd4df2fc1c79a7102587bebf398f95b5e5de"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Oct 10 11:02:11 2014 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Oct 10 12:26:02 2014 -0700"
      },
      "message": "Fix 2 new sets of clang compiler warnings.\n\nFix issues that are flagged by -Wfloat-equal and -Wmissing-noreturn.\nIn the case of -Wfloat-equal the current cases in regular code are deliberate,\nso the change is to silence the warning. For gtest code the appropriate fix is\nto switch from EXPECT_EQ to EXPECT_(FLOAT|DOUBLE)_EQ.\nThe -Wmissing-noreturn warning isn\u0027t enabled due to a missing noreturn in\ngtest. This issue has been reported to gtest.\n\nChange-Id: Id84c70c21c542716c9ee0c41492e8ff8788c4ef8\n"
    },
    {
      "commit": "e63db27db913f1a88e2095a1ee8239b2bb9124e8",
      "tree": "893dee6783bca6717259321a6e4ba029c9c123e2",
      "parents": [
        "07b8441303ea82fca3cb85d71ecf8752d73cedd7"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Tue Jul 15 15:36:11 2014 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Tue Jul 15 17:07:49 2014 -0700"
      },
      "message": "Break apart header files.\n\nCreate libart-gtest for common runtime and compiler gtest routines.\nRename CompilerCallbacksImpl that is quick compiler specific.\nRename trace clock source constants to not use the overloaded profiler term.\n\nChange-Id: I4aac4bdc7e7850c68335f81e59a390133b54e933\n"
    },
    {
      "commit": "700a402244a1a423da4f3ba8032459f4b65fa18f",
      "tree": "4c22fcda04d271bd55a37aff30650214af17a90c",
      "parents": [
        "047c11adcbcbc0bcf210defdfcbada763961ffee"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Mon May 19 16:49:03 2014 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Mon May 19 22:27:39 2014 -0700"
      },
      "message": "Now we have a proper C++ library, use std::unique_ptr.\n\nAlso remove the Android.libcxx.mk and other bits of stlport compatibility\nmechanics.\n\nChange-Id: Icdf7188ba3c79cdf5617672c1cfd0a68ae596a61\n"
    },
    {
      "commit": "507dfdd147c97bfbadebfd63584d094b6a4e7b47",
      "tree": "cce43931b6dcd088cb2932c2491f86116353a27f",
      "parents": [
        "922ddb30982d2597eab634d8b8598bec0eb7d3b7"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Thu May 15 16:42:40 2014 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Thu May 15 16:50:51 2014 -0700"
      },
      "message": "Compatibility layer to transition from UniquePtr to std::unique_ptr.\n\nUse ART_WITH_STLPORT (enabled for the target) to cause the use of UniquePtr,\nfor the host switch to std::unique_ptr. For now the type remains called\nUniquePtr.\nMake dalvik compile with clang on the host, move its build to C++11.\n\nChange-Id: I5ba8d2757904bc089ed62047ea03de3c0853fb12\n"
    },
    {
      "commit": "9583fbcf597eff6d0b3c5359b8e8d5f70ed82c40",
      "tree": "847912709f811adda0fa63e89e4bf8af27769f2e",
      "parents": [
        "093aad184b4451639951a7e012d9b55cbf8c8a07"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Feb 28 15:21:07 2014 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Mar 04 16:30:48 2014 +0000"
      },
      "message": "Remove oat file location in the image.\n\nThe oat file is now always in the same directory, and has the\nsame name as the image file. Only difference is the extension.\n\nThis also removes the need for host-prefix.\n\nChange-Id: I16d1f7aeb1d58372d41921694664e9c321afc1ad\n"
    },
    {
      "commit": "491ca9e75fad381468dd7f5fdbff56d1a9738dd7",
      "tree": "4a88d05188aebbcbe868a27b58fc1a932f914ce2",
      "parents": [
        "82e3a8ef9cd776d7026b45fe7fb6c72bcfd61394"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Sun Mar 02 18:24:38 2014 -0800"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Mon Mar 03 13:31:40 2014 -0800"
      },
      "message": "Add ART -help and -showversion\n\nBug: https://code.google.com/p/android/issues/detail?id\u003d62149\nChange-Id: I5c21c0433f5f341f94e7d977e8d2d69cc46d6fe3\n"
    },
    {
      "commit": "a1ce1fef2d49d1d537776a5308ace7102a815fe5",
      "tree": "a1afe850d9ebd21f4b751eb68e1ec3dc60dab001",
      "parents": [
        "930f7b843ddc6e6530439d3fdb0e2133a6292f1e"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Mon Feb 24 23:23:58 2014 -0800"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Feb 26 13:17:44 2014 -0800"
      },
      "message": "Split up CommonTest into CommonRuntimeTest and CommonCompilerTest\n\nChange-Id: I8dcf6b29a5aecd445f1a3ddb06386cf81dbc9c70\n"
    },
    {
      "commit": "7940e44f4517de5e2634a7e07d58d0fb26160513",
      "tree": "ac90242d96229a6942f6e24ab137bc1f8f2e0025",
      "parents": [
        "5cd9e3b122f276f610980cbaf0d2ad6ed4cd9088"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Fri Jul 12 13:46:57 2013 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Fri Jul 12 17:49:01 2013 -0700"
      },
      "message": "Create separate Android.mk for main build targets\n\nThe runtime, compiler, dex2oat, and oatdump now are in seperate trees\nto prevent dependency creep.  They can now be individually built\nwithout rebuilding the rest of the art projects. dalvikvm and jdwpspy\nwere already this way. Builds in the art directory should behave as\nbefore, building everything including tests.\n\nChange-Id: Ic6b1151e5ed0f823c3dd301afd2b13eb2d8feb81\n"
    },
    {
      "commit": "bd86bccf1b47f1151842152ee52cf5d46d6b34ab",
      "tree": "c0c110b47435c6e8548f1b7126f9ea20da7fd934",
      "parents": [
        "5d021c7399fa8090910d5b47ed00465a4e0e7e0f"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Sun Mar 10 20:26:16 2013 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Mon Mar 11 15:47:02 2013 -0700"
      },
      "message": "Tracking rebase to jb-mr1-release\n\nChange-Id: Ic2ae1a27682cc4152003a68d59068b2c5c5eb09b\n"
    },
    {
      "commit": "a004aa933a58428489e42d77f707c2b063b73747",
      "tree": "1224764c4a524957e94dfe2d27e277d024986668",
      "parents": [
        "573b7c9324b11ff7f42f68c9ad52d26ebc4b6d12"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Feb 08 18:05:09 2012 -0800"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Thu Feb 16 17:48:28 2012 -0800"
      },
      "message": "user build support for art (2 of 3)\n\nChange-Id: I4696fee58e43db48540e2442c4235fc4bb02d9e3\n"
    },
    {
      "commit": "223f20fa939c386c695977263780dea2195093db",
      "tree": "642d1abe5dfbf2239bf239e8e91bebd333384378",
      "parents": [
        "a56fcd60596ae8694da21fccde5c56832e437c56"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Sat Feb 04 23:06:55 2012 -0800"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Sat Feb 04 23:24:56 2012 -0800"
      },
      "message": "Remove old code to support multiple images\n\nChange-Id: I29bc2f216361ac4ed0cc0fefb7e3c46ee64e0ae8\n"
    },
    {
      "commit": "2faa5f1271587cda765f26bcf2951065300a01ff",
      "tree": "c59557857c36741cfcd1b6bf5ae039886a8ad6e7",
      "parents": [
        "0850c69c88d49efd4075288511b70d6c032bd0c8"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jan 30 14:42:07 2012 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jan 30 16:46:29 2012 -0800"
      },
      "message": "Fix copyright headers.\n\nChange-Id: I5b7bc76a370238d810d78522bd5531600746700f\n"
    },
    {
      "commit": "955724179c6c739524f610023287f56b24dc31de",
      "tree": "64f751693e72173ae0d044d8c54989b01f1195af",
      "parents": [
        "b87f73ea7524f6eb9da6da1af931a3d3fbb833ff"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Dec 13 18:14:20 2011 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Dec 13 18:14:20 2011 -0800"
      },
      "message": "Don\u0027t default-construct std::strings and then assign them.\n\nChange-Id: I8c994d1e6a8d2ebe52eaa4f0132e0deb2ecfa5f3\n"
    },
    {
      "commit": "4dd9b4d95eec9db5338fb9bf132f9bb8facf6cf4",
      "tree": "f9dc6f6e6a55acea3a08f1f568ae6900c1dd7dd1",
      "parents": [
        "20a409c99a649a01cb7c65bd1089988445d8cdfd"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Dec 12 18:29:24 2011 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Dec 13 08:23:08 2011 -0800"
      },
      "message": "Clean up verbose logging.\n\nChange-Id: I6b01980e7145c4f8d25a5b50f620903f61a1b427\n"
    },
    {
      "commit": "58ae9416e197ae68ed12ed43d87407d4dfb15093",
      "tree": "9fa93ce844f931155bf4a1d060f091f3285fb205",
      "parents": [
        "4d0207c3ed28bbbb8c583a3c3a37f00d1cd4dedc"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Tue Oct 04 00:56:06 2011 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Tue Oct 04 10:39:42 2011 -0700"
      },
      "message": "Simplify command line arguments\n\nChange-Id: I9d6902b0c447fd8fbe5600fd36139791b2ceefb7\n"
    },
    {
      "commit": "69b15fb098162f19a4c20e6dccdcead04d9c77f0",
      "tree": "84fdfc26f560fb618b652a0aff98347f875a2653",
      "parents": [
        "109bd6a38d0cd7c4b7797a9f2db8324c797d1368"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Sat Sep 03 12:25:21 2011 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Tue Sep 06 15:28:47 2011 -0700"
      },
      "message": "Working dex2oat and oatexec\n\nadb shell dex2oatd --dex-file\u003d/system/framework/core.jar     --image\u003d/system/framework/boot.oat --base\u003d0x50000000 \"\u0027--method\u003dLjava/lang/System;logI(Ljava/lang/String;)V\u0027\" \"\u0027--method\u003dLjava/lang/System;log(CLjava/lang/String;Ljava/lang/Throwable;)V\u0027\"\nadb shell dex2oatd --boot-dex-file\u003d/system/framework/core.jar --boot\u003d/system/framework/boot.oat --dex-file\u003d/system/framework/art-test-dex-HelloWorld.jar --image\u003d/system/framework/art-test-dex-HelloWorld.oat\nadb shell oatexecd -Xbootclasspath:/system/framework/core.jar -Xbootimage:/system/framework/boot.oat -classpath /system/framework/art-test-dex-HelloWorld.jar -Ximage:/system/framework/art-test-dex-HelloWorld.oat HelloWorld\n\n09-05 17:58:18.912  2385  2385 I System  : Hello, world!\n\nChange-Id: I53e534068584f0c3a837313e4d517a0e4a7154fc\n"
    },
    {
      "commit": "90a3369d3b6238f1a4c9b19ca68978dab1c39bc4",
      "tree": "b66ec9b2cced5713bd5902c499d57b533d2e7a9a",
      "parents": [
        "34023801bd544e613d6e85c9a5b2e743f3710e8f"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Aug 30 13:27:07 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Aug 30 13:27:45 2011 -0700"
      },
      "message": "Switch to UniquePtr.\n\nOnly one use of scoped_ptr was incorrect (but then again, I spent an afternoon\nwith valgrind finding and fixing them just last week).\n\nChange-Id: If5ec1c8aa0794a4f652bfd1c0fffccf95facdc40\n"
    },
    {
      "commit": "34023801bd544e613d6e85c9a5b2e743f3710e8f",
      "tree": "cf42aadf76cd6c1104e75f20b223716ed44dbb16",
      "parents": [
        "881dd56c9b6ea2c922956650b763d36d2eeb799b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Aug 30 12:06:17 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Aug 30 12:06:17 2011 -0700"
      },
      "message": "Remove uses of scoped_ptr_malloc.\n\nChange-Id: I355fcfc93e8d689bea8b9388423ca12cb3e6566f\n"
    },
    {
      "commit": "9cff8e13d41825c4f3f0127af061e94b06114fc8",
      "tree": "3425941132a8b1406126015cf9c45fd661b574a2",
      "parents": [
        "67bf885d62b1473c833bece1c9e0bb624e6ba391"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Thu Aug 18 16:47:29 2011 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Fri Aug 19 22:01:22 2011 -0700"
      },
      "message": "Convert Class::descriptor_ from StringPiece to String (as part of image loading)\n\nChange-Id: Iab5ffa353661a7c06ee79af1f40d399a53777174\n"
    },
    {
      "commit": "f734cf55d510976f4862b15e35fc86eae2a3daf8",
      "tree": "cdb1077841e6be87353c27f2a30d352ac627663a",
      "parents": [
        "0af5543f8ea20c3e655b2d748a1b7dcf283792fe"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Aug 17 16:28:14 2011 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Aug 17 21:51:13 2011 -0700"
      },
      "message": "Add ParsedOptions test (and migrate RuntimeTest to CommonTest)\n\nChange-Id: Ic338520dfaca2228260e546ed1522c37b83f42ac\n"
    },
    {
      "commit": "6ea095ad30bf13cc00b4fee7afbbe4731a349c83",
      "tree": "fa86d5b6e4876c0abab7727d5d9a10c0b1974eb6",
      "parents": [
        "8a436595d36c1e4935984fcac249d7d877e00383"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Tue Aug 16 15:26:54 2011 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Tue Aug 16 15:44:55 2011 -0700"
      },
      "message": "Parse required options\n\nChange-Id: Ia534132dcb1bfc4adbde3ed8afb07535e26ba942\n"
    },
    {
      "commit": "db4d54081f09abcbe97ffdf615874f2809a9e777",
      "tree": "86d4b6cdbfda6538ebf3fbb2f362209eb6867ce5",
      "parents": [
        "350dad1bb785281d6740633f219a2832feda6ff3"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Tue Aug 09 12:18:28 2011 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Mon Aug 15 10:03:22 2011 -0700"
      },
      "message": "First pass of ImageWriter\n\nChange-Id: I4f189587a2e3cc1c265200b8fa64321b299947eb\n"
    },
    {
      "commit": "fc322c72d7a89a6f7a05c8bdc232d780aecd9232",
      "tree": "c27f4b609a09f0fa647bc7307af54f17604d9bd9",
      "parents": [
        "a40f9bc48afe3a9d38be2fa298fece13ed82ba28"
      ],
      "author": {
        "name": "Carl Shapiro",
        "email": "cshapiro@google.com",
        "time": "Wed Jul 27 00:20:01 2011 -0700"
      },
      "committer": {
        "name": "Carl Shapiro",
        "email": "cshapiro@google.com",
        "time": "Wed Jul 27 00:20:01 2011 -0700"
      },
      "message": "Initialize the bootstrap class path from standard sources.\n\nChange-Id: Ib49d21f98fd76504e5d3675fc731261426ca84ed\n"
    }
  ]
}
