)]}'
{
  "log": [
    {
      "commit": "6497ede52be6712619c06822ca43b37a8a0e6f84",
      "tree": "385b28b10aef97133c48dd0de67b43c58393b183",
      "parents": [
        "57207cd8a6cd5c2eb7ad0ec2094bf54973492322"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Feb 14 11:23:09 2018 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Feb 14 19:27:44 2018 +0000"
      },
      "message": "Fix dependencies on x86_64 valgrind\n\nx86_64 valgrind is called amd64, not x86_64.\n\nTest: lunch aosp_x86_64-eng \u0026\u0026 m checkbuild\nChange-Id: Ie529b9ca6cd12463d5604885c719438477a8c8a1\n"
    },
    {
      "commit": "3bffbe8a8288cf01b7248fffdd320bf688529bcb",
      "tree": "cc613fa2990698024caf48ba695efcb6bca9a5fb",
      "parents": [
        "c6023e576f316cb22469b1cd150794521c086643",
        "b015529dcd9dac680b5c035d7ac52bca54061547"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 14 06:06:05 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 14 06:06:05 2018 +0000"
      },
      "message": "Merge \"Don\u0027t depend on x86 valgrind\""
    },
    {
      "commit": "b015529dcd9dac680b5c035d7ac52bca54061547",
      "tree": "9469a31bfb007b08ecb5187f212374a15fb5abf2",
      "parents": [
        "3d08bbd60aa255af99e575579e8fa78d12d77871"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Feb 12 16:50:49 2018 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Feb 13 13:53:51 2018 -0800"
      },
      "message": "Don\u0027t depend on x86 valgrind\n\nValgrind is not supported for x86+SSE4, so we don\u0027t build an x86\nversion.  Don\u0027t depend on it to avoid triggering dangling\ndependency checks.\n\nTest: lunch aosp_x86-eng \u0026\u0026 m checkbuild\nChange-Id: I156bcdf92d9a70ad7e796e1d7e69f5797c9f1738\n"
    },
    {
      "commit": "9b559574cbc3d565385acfbb01a6cc9027302b08",
      "tree": "70d2300db185260eb55bee6ab9f17a1702b89684",
      "parents": [
        "3a18549725e10b2be898e13659001d6694b39f08",
        "139512d4b110b087ea5439852f9f53e90e3d5a33"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Feb 10 02:14:24 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Feb 10 02:14:24 2018 +0000"
      },
      "message": "Merge \"Split dex_file_loader_test\""
    },
    {
      "commit": "fc604a7065142b61a4d2f468ddb46733a916b4cd",
      "tree": "b529fed07e9fd9518767dd8757154693d521a0aa",
      "parents": [
        "67a3d45c89c0e43f7206936a7438dfed79fea159"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Feb 08 15:43:37 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Feb 09 13:14:53 2018 -0800"
      },
      "message": "ART: Be more robust with multidex uncompressed-dex odex files\n\nReject odex/vdex files that mix embedded and uncompressed dex files.\nThis simplifies the code and allows early detection of mismatches\nand corruption.\n\nBug: 73086368\nTest: m test-art-host\nTest: m test-art-host-gtest-oat_file_test\nTest: manual (with bug\u0027s environment)\nChange-Id: Icccb3ca29b6c5f5adefe3735c91b8b6eac113af6\n"
    },
    {
      "commit": "139512d4b110b087ea5439852f9f53e90e3d5a33",
      "tree": "6372bda67a55ba5bc505def17eb87b942827cf4b",
      "parents": [
        "cd4ddeea1c33d5f9b7758d116451bd06f1b81aff"
      ],
      "author": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Thu Feb 08 15:44:50 2018 -0800"
      },
      "committer": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Fri Feb 09 10:59:57 2018 -0800"
      },
      "message": "Split dex_file_loader_test\n\nInto DexFileLoader and ArtDexFileLoader portions.  This is the last test\nrefactoring before moving libdexfile out of the runtime directory.\n\nBug: 22322814\nTest: make -j 50 test-art-host\nChange-Id: I7568a7b444fb110f64614f2066df6eb5ab3a5c69\n"
    },
    {
      "commit": "700a9851eb3271c00c537a865d74f2fe38419584",
      "tree": "8b6c0c0c95df62937eacb61285c4841f91b19209",
      "parents": [
        "5168173dd6e79341b4b1f0a349721a2c7aa2a846"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Feb 06 18:27:38 2018 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Feb 07 11:29:09 2018 -0800"
      },
      "message": "Fix potential null read for truncated dex files\n\nIn the case where a dex file is truncated, don\u0027t attempt to read the\nheader.\n\nAdded regression test.\n\nBug: 63756964\nBug: 72826975\nTest: mm test-art-host-gtest-dex2oat_test -j64\nTest: mm test-art-target-gtest-dex2oat_test -j64\nChange-Id: I9bd6bb445ef2eb1c961044f43ac71f04ef8c04a5\n"
    },
    {
      "commit": "b95eb37a04874a57046fba7fc09a8b197691e9a2",
      "tree": "547fb453899b546223dde08238e25cba3dc5fb0a",
      "parents": [
        "f60b4c80e01b21da2228d35bc20309913065565d",
        "f30752709e1131ae1a4c16f22cc7a0960c198e77"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jan 24 08:56:59 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 24 08:56:59 2018 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Don\u0027t embed the dex code in the oat file if dex is uncompressed.\"\"\""
    },
    {
      "commit": "c05fd3fe688239700baf205dfd2910338a534dcb",
      "tree": "31c451e7142b22637edd3c5877e85d968ed10e49",
      "parents": [
        "6650b0db52eee45f024652bae526ad64166ae02f"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jan 23 14:22:07 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jan 23 14:22:07 2018 -0800"
      },
      "message": "ART: Fix gtest stack invocation\n\nEnsure that the stack tool always finds ANDROID_BUILD_TOP, even if\nenvsetup wasn\u0027t run. Follow-up to commit 6acebf451.\n\nBug: 31098551\nTest: m test-art-host-gtest\nTest: m SANITIZE_HOST\u003daddress test-art-host-gtest\nChange-Id: I63dc3f94c31dfc101d8ebfcf63c63684e9a92140\n"
    },
    {
      "commit": "f30752709e1131ae1a4c16f22cc7a0960c198e77",
      "tree": "c671f0ac704f7a702fed77295a1d5fe690425394",
      "parents": [
        "2e1791b74406fba9930bbe5dfa5358d2d2c07e1a"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Jan 08 12:41:19 2018 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Jan 23 14:38:35 2018 +0000"
      },
      "message": "Revert \"Revert \"Don\u0027t embed the dex code in the oat file if dex is uncompressed.\"\"\n\nBug: 63920015\nBug: 70854754\n\nTest: oat_writer_test.cc, test.py\n\nRevert was due to userdebug/user differences, which is fixed with:\nhttps://googleplex-android-review.googlesource.com/#/c/platform/build/+/3434091/\n\nThis CL also fixes oatdump when the dex code is not in the .vdex file.\n\nThis reverts commit e166e67666bf4b23e4ed0a98f5e2bb3cae9cee7d.\n\nChange-Id: Iec924be2ff8f03cf2ebe306e7a0018241f33beb0\n"
    },
    {
      "commit": "6acebf451acb86fc778c17ed2e129463e5b836ec",
      "tree": "0e57a935928c64933f18075fe423a582b35c33fa",
      "parents": [
        "b6d077aceb38922891a6b9e79714bad3072f9c15"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jan 22 22:15:43 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jan 22 22:33:53 2018 -0800"
      },
      "message": "ART: Add symbolization pass to host gtests\n\nWhen running under sanitization, add a symbolization pass to gtest\nfailures. This compensates for the disabled runtime symbolization,\nand brings gtest to parity with run-tests.\n\nThis pass is only enabled under sanitization as it incurs extra\nI/O for a temporary file, and loses the default coloration.\n\nBug: 31098551\nTest: m test-art-host-gtest\nTest: m SANITIZE_HOST\u003daddress test-art-host-gtest\nChange-Id: Id36d907f3ffe9c8480fa5b4af94807d5e6532fda\n"
    },
    {
      "commit": "2b9c35be35a759ba2032692648f5bbcb1e7e78c8",
      "tree": "4825fdb4a4ecd27922dc9c945b30423534e67010",
      "parents": [
        "6d4c343ee5db18f039aeb3e07ff8d3c1fd37c3a0"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Jan 12 15:44:43 2018 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Jan 16 15:32:12 2018 +0000"
      },
      "message": "Introduce new build tool: hiddenapi\n\nNew tool `hiddenapi` iterates over all class members inside given\nDEX files and modifies their access flags if their signatures\nappear on one of two lists - greylist and blacklist - provided as\ntext file inputs. These access flags denote to the runtime that\nthe marked methods/fields should be treated as internal APIs with\nrestricted access.\n\nTwo bits of information are encoded in the DEX access flags. These\nare encoded as unsigned LEB128 values in DEX and so as to not\nincrease the size of the DEX, different modifiers were chosen to\ncarry the information under different circumstances.\n\nFirst bit is encoded as the inversion of visibility access flags\n(bits 2:0). At most one of these flags can be set at any given time.\nInverting these bits therefore produces a value where at least two\nbits are set and there is never any loss of information.\n\nSecond bit is encoded differently for each given type of class\nmember as there is no single unused bit such that setting it would\nnot increase the size of the LEB128 encoding.\n - Bit 5 for fields as it carries no other meaning\n - Bit 5 for non-native methods, as `synchronized` can only be set\n   on native methods\n - Bit 9 for native methods, as it carries no meaning and bit 8\n   (native) will make the LEB128 encoding at least two bytes long\n\nThis tool is meant to be applied on boot class path DEX files and\nas such, this encoding is not part of the DEX specification and may\nchange in the future. Access flags returned by ClassDataItemIterator\nare stripped of these hidden flags and thus fully transparent to the\nruntime.\n\nTest: m test-art-host\nBug: 64382372\nChange-Id: Ifc237ff8a35a8b470b7fc682a9cb879370d1e6e9\n"
    },
    {
      "commit": "22861a9732e26e45f546c16eb1a99cd2693c2bd9",
      "tree": "05b66d84f84bd526e9ba7b59aaf75bfc701b3af4",
      "parents": [
        "b4182a351fceaf397c2dce1655703912b2f85437",
        "ecb8662b817a2f5d6f9c035ca4d0bdc12f865b2c"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jan 10 19:04:17 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 10 19:04:17 2018 +0000"
      },
      "message": "Merge \"Enable compact dex by default\""
    },
    {
      "commit": "9d402eb63cc243fa89f1b5d954f95cd149cf1437",
      "tree": "28cf8215018e09ef4f4493570911cc119cb85fa8",
      "parents": [
        "f4bf58d9b13972117c640ea1d7bfa6e6dfc189ea",
        "31f22d62e260d1aab17a3f148f3bd8b52b0ff135"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Jan 10 17:18:37 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 10 17:18:37 2018 +0000"
      },
      "message": "Merge \"Change from PPID to CWD to distinguish between different trees\""
    },
    {
      "commit": "31f22d62e260d1aab17a3f148f3bd8b52b0ff135",
      "tree": "e2bdaea358d1bf2bfc9b4c9f0f6083fcfbf58667",
      "parents": [
        "4b9a11f1d43df69c50e93ba1793fce1c2216682b"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Jan 09 15:57:26 2018 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Jan 10 17:18:00 2018 +0000"
      },
      "message": "Change from PPID to CWD to distinguish between different trees\n\nUsing PPID to distinguish between multiple concurrent trees being\nbuilt was causing the whole build-system to be re-scanned each time we\ntried to run an art test. By changing it to be based on CWD ckati\nshould not need to rescan all mk files as much.\n\nThis is a hacky workaround, but the only proper fix is stop using a\ntest runner built on top of make.\n\nTest: mma -j40 test-art-host-gtest-zip_archive_test64 several times\nBug: 71766439\nChange-Id: If17221a74b081ebfec8dbf7076b2cd702861eda9\n"
    },
    {
      "commit": "f4bf58d9b13972117c640ea1d7bfa6e6dfc189ea",
      "tree": "a6bdf10f36796c1924e9dca6bfcf1477269c8073",
      "parents": [
        "d6b7e8c63f8eca25460f56f66dcae15eaa897ff0",
        "ec2cdf4286921131a5f9b3ed12060657ec40f636"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Jan 10 13:57:04 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 10 13:57:04 2018 +0000"
      },
      "message": "Merge \"Try to mmap vdex file within the address range of the ELF file.\""
    },
    {
      "commit": "ecb8662b817a2f5d6f9c035ca4d0bdc12f865b2c",
      "tree": "7e28af8d410cd96b0768c016eb289a5deb9b387f",
      "parents": [
        "a821bb1a71637dbd2e251795fce26f5f6f937299"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jan 04 15:30:45 2018 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jan 04 16:36:15 2018 -0800"
      },
      "message": "Enable compact dex by default\n\nDisabled two testrunner columns to preserve testing of normal dex\nfiles.\n\nBug: 63756964\nTest: test-art-host\n\nChange-Id: Icec758b614f938c1dede079ce86df00a9a4f833e\n"
    },
    {
      "commit": "a821bb1a71637dbd2e251795fce26f5f6f937299",
      "tree": "887d934dd59f0bff408ef31b72b86048d73c766a",
      "parents": [
        "a61e97fd3cae77ec62c3f3bbe944a7eb4bfa87bf",
        "50173eb643bb1e9aa024e2fd11ac48d93e6bd786"
      ],
      "author": {
        "name": "Alan Leung",
        "email": "acleung@google.com",
        "time": "Thu Jan 04 19:37:08 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 04 19:37:08 2018 +0000"
      },
      "message": "Merge \"Make D8 Desugaring default.\""
    },
    {
      "commit": "ec2cdf4286921131a5f9b3ed12060657ec40f636",
      "tree": "32f15162b6b74ed247e75eeb9b9cbe936760eca5",
      "parents": [
        "ee58c02b5959944a2db198a2d58355651ed29d53"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Dec 08 16:21:25 2017 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Jan 04 17:08:50 2018 +0000"
      },
      "message": "Try to mmap vdex file within the address range of the ELF file.\n\nAdd ELF section for the vdex file and mmap it there at runtime.\nThis ensures that the data is at predictable location, which\nis needed to be able to reference it from native debug-info.\n\nThis does not change the amount of memory allocated, or the\nlocation of the data on disk.  However, it does change how\nthe memory is allocated - it replaces two allocations\n(ELF and vdex) by just one (ELF which includes the vdex).\n\nBug: 71579677\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\n\nChange-Id: Ie2abd36c8b6617a527368e71f932998bbe5ad38c\n"
    },
    {
      "commit": "dfee52ffc2695e5d588d6f125c4f1b3b5e9ac4eb",
      "tree": "af17e1c150c46fd97b82e916115345226a632b75",
      "parents": [
        "4abc0012a4d9dfe1074b904462b96bc9c71b5f3a"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Jan 04 06:44:27 2018 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Jan 04 06:58:50 2018 -0800"
      },
      "message": "Don\u0027t use ANDROID_BUILD_TOP in common_test.mk\n\nThe environment variable has been deprecated. Instead just use PPID.\n\nTest: mma -j40 test-art-host-gtest\n\nChange-Id: I229ae92a972f3cd28ff9de6d186b798de3b328c2\n"
    },
    {
      "commit": "50173eb643bb1e9aa024e2fd11ac48d93e6bd786",
      "tree": "465c9e587a6fc19fde2941bd4a3804e56a3c27c3",
      "parents": [
        "90f20973356900e340998e8e2b34230e5c4c8fb0"
      ],
      "author": {
        "name": "Alan Leung",
        "email": "acleung@google.com",
        "time": "Wed Dec 20 13:33:21 2017 -0800"
      },
      "committer": {
        "name": "Alan Leung",
        "email": "acleung@google.com",
        "time": "Wed Jan 03 14:28:23 2018 -0800"
      },
      "message": "Make D8 Desugaring default.\n\nBug: 69329508\nTest: m checkbuild\nChange-Id: I25218efd33885a0b8c11858ccabeb4cfce4302bf\n"
    },
    {
      "commit": "e8f74caabfb6885ee5ad3a811222083877ca595e",
      "tree": "7f63a42622d2613cc64c8310b09d8707efdf9e92",
      "parents": [
        "90f20973356900e340998e8e2b34230e5c4c8fb0"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jan 02 09:26:16 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jan 02 16:53:48 2018 -0800"
      },
      "message": "ART: Ensure slow-debug mode in dex2oatd testing\n\nMake sure that dex2oatd is configured to run slow-debug checks in\nrun-tests and for core image generation.\n\nBug: 35644369\nTest: m test-art-host\nChange-Id: I294dbd43dec38d63548c552ffde51e22044cf746\n"
    },
    {
      "commit": "a6615945258f003756ce7f344670a2802fad7037",
      "tree": "ebeb5b97ff910ec282c4d32104d73a4372979051",
      "parents": [
        "69b2560d6aa74b38cbbd22b8fdabbfb38e814835",
        "e166e67666bf4b23e4ed0a98f5e2bb3cae9cee7d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Dec 19 22:55:03 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 19 22:55:03 2017 +0000"
      },
      "message": "Merge \"Revert \"Don\u0027t embed the dex code in the oat file if dex is uncompressed.\"\""
    },
    {
      "commit": "e166e67666bf4b23e4ed0a98f5e2bb3cae9cee7d",
      "tree": "c76c20d3f409cdc8bee26c03fd5e76356f150653",
      "parents": [
        "ae7e83817e546848ef6b2949dd9065b153e14316"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Dec 19 18:59:29 2017 +0000"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Dec 19 18:59:29 2017 +0000"
      },
      "message": "Revert \"Don\u0027t embed the dex code in the oat file if dex is uncompressed.\"\n\nThis reverts commit ae7e83817e546848ef6b2949dd9065b153e14316.\n\nReason for revert: Broken wrt/ preopted apps and stripping\n\nBug: 63920015\nBug: 70777774\nChange-Id: I39580684d46fa57bd780d2d8bedd65a47d58cf5e\nTest: m\n"
    },
    {
      "commit": "8f514ee35ec3dda9b38b794a8052e0312e4b1c04",
      "tree": "a70cf71317d20c24ee8ffbb10b017fcf94ff6dee",
      "parents": [
        "df99018e106ee1d3b7601718fa1e444ab0a028da"
      ],
      "author": {
        "name": "Alan Leung",
        "email": "acleung@google.com",
        "time": "Fri Dec 08 14:08:25 2017 -0800"
      },
      "committer": {
        "name": "Alan Leung",
        "email": "acleung@google.com",
        "time": "Tue Dec 19 01:35:43 2017 -0800"
      },
      "message": "Update java.lang.String class size.\n\nIn standalone desugar, one of the implemented interface CharSequence has\ntwo lambdas:\n\nlambda$chars$0$CharSequence\nlambda$codePoints$1$CharSequence\n\nwhich are virtual functions.\n\nIn D8 Desugar, both of them are now direct methods.\n\nBug: 69477285\nTest: USE_D8_DESUGAR\u003dtrue m \u0026\u0026 USE_D8_DESUGAR\u003dfalse m\nChange-Id: I94aaa42e86bd104fc86fa14d1eb45b2e906da5a9\n"
    },
    {
      "commit": "d1d5c95f5ae38ca194c251914da82371e0192b60",
      "tree": "1076af939f9be74665adfc244e7208b8a8fb06ba",
      "parents": [
        "bee510c94560703102ca553a08ec47119959c204"
      ],
      "author": {
        "name": "Alex Klyubin",
        "email": "klyubin@google.com",
        "time": "Fri Dec 15 12:57:33 2017 -0800"
      },
      "committer": {
        "name": "Alex Klyubin",
        "email": "klyubin@google.com",
        "time": "Fri Dec 15 22:18:17 2017 +0000"
      },
      "message": "Revert^4 \"Add patchoat test\"\n\nThis reverts commit 1fb8d5ee6c7f03269cf08b18a0af5b4e25924a27.\n\nSkip the patchoat test on the build server where the build is not\nusing read barriers. Read barriers (or CMS/MS garbage collector) are\nrequired for the --force-determinism feature used by the test.\n\nTest: ./art/test/testrunner/run_build_test_target.py art-gtest-debug-gc\nTest: make test-art-host-gtest-patchoat_test\nTest: make test-art-target-gtest-patchoat_test\nBug: 66697305\nChange-Id: I99da0111ca0e34d32473dfe721b7a2f49289e850\n"
    },
    {
      "commit": "c8d910399cfd33550c497cc3e1e05b0396903234",
      "tree": "e059185813d4d28e3cfed47d5cc1f844f0188bfc",
      "parents": [
        "192cf6e300316d3fbbead115b1ca50ed3dc2f4b3",
        "ae7e83817e546848ef6b2949dd9065b153e14316"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Dec 15 09:30:39 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 15 09:30:39 2017 +0000"
      },
      "message": "Merge \"Don\u0027t embed the dex code in the oat file if dex is uncompressed.\""
    },
    {
      "commit": "1fb8d5ee6c7f03269cf08b18a0af5b4e25924a27",
      "tree": "84e1e493074878447cf1fe01ece97b9eff8b5f52",
      "parents": [
        "203010a86542b16991ede122085b07eea6c55bec"
      ],
      "author": {
        "name": "Alex Klyubin",
        "email": "klyubin@google.com",
        "time": "Thu Dec 14 21:32:44 2017 +0000"
      },
      "committer": {
        "name": "Alex Klyubin",
        "email": "klyubin@google.com",
        "time": "Thu Dec 14 21:32:44 2017 +0000"
      },
      "message": "Revert \"Revert \"Revert \"Add patchoat test\"\"\"\n\nThis reverts commit 203010a86542b16991ede122085b07eea6c55bec.\n\nReason for revert: This test is breaking on a build server -- no idea why as no output can be seen.\n\nChange-Id: Ibb93d84e673c45e13ba81b1f045eb7c8d31494fd\n"
    },
    {
      "commit": "ae7e83817e546848ef6b2949dd9065b153e14316",
      "tree": "e46ea86e925c4b2a4237f5ebba0c7ba3d61b0359",
      "parents": [
        "dc93cac66f1db225474cec5bf0350fd7a148085e"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Nov 20 15:10:28 2017 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Dec 13 22:23:12 2017 +0000"
      },
      "message": "Don\u0027t embed the dex code in the oat file if dex is uncompressed.\n\nTake uncompressed dex code as a signal that the app wants to\nopt into b/63920015.\n\nbug: 63920015\nTest: dex2oat_test, 071-dexfile-clean-map\n\nChange-Id: I878e7bb80fc895a2d9aafe81aa7666b86af1f808\n"
    },
    {
      "commit": "203010a86542b16991ede122085b07eea6c55bec",
      "tree": "c96b76218bae69b9c94810b3b96916979d2dc7d9",
      "parents": [
        "702f6f276d2b81ae27bce51c2e78b04aa45a5796"
      ],
      "author": {
        "name": "Alex Klyubin",
        "email": "klyubin@google.com",
        "time": "Wed Dec 13 12:53:28 2017 -0800"
      },
      "committer": {
        "name": "Alex Klyubin",
        "email": "klyubin@google.com",
        "time": "Wed Dec 13 12:58:56 2017 -0800"
      },
      "message": "Revert \"Revert \"Add patchoat test\"\"\n\nThis reverts commit 5dd08acd0b568bb05e2e75fc02d8a6d3d7aa6f8e.\n\nThis attempt removes any remaining non-determinism, by passing in\n--force-determinism to dex2oat in the test. As a result, the test\nnow passes both host-side and device-side.\n\nTest: make test-art-host-gtest-patchoat_test\nTest: make test-art-target-gtest-patchoat_test\nBug: 66697305\nChange-Id: I8192ced68cec9f270b004488eb264f429bf7ab60\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": "a4ba9b53d8c102369a316c93ff14eaa488493435",
      "tree": "1cb1cc7de1e9cf8ca26abff047384295168ff112",
      "parents": [
        "a5197fa69737f89ea92758420539f74a19bf8947"
      ],
      "author": {
        "name": "Alan Leung",
        "email": "acleung@google.com",
        "time": "Thu Nov 16 00:19:18 2017 -0800"
      },
      "committer": {
        "name": "Alan Leung",
        "email": "acleung@google.com",
        "time": "Thu Nov 16 01:06:26 2017 -0800"
      },
      "message": "Rename d8 to d8-compat-dx\n\nBug: 69368371\nTest: ./art/test/testrunner/run_build_test_target.py -j110 art-test\nChange-Id: If06113796469393682bc5cd376fac917850bf384\n"
    },
    {
      "commit": "a5197fa69737f89ea92758420539f74a19bf8947",
      "tree": "00a7a6525e86e16e75ed8342fec6936568d166a9",
      "parents": [
        "0bfd0cc8e351bdd6464ef5aa546d13e89b15f4d6",
        "2a2d3117e3912743527455ec2b7056eb66215ae1"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Nov 16 03:06:20 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Nov 16 03:06:20 2017 +0000"
      },
      "message": "Merge \"cpplint: Use upstream cpplint\""
    },
    {
      "commit": "2a2d3117e3912743527455ec2b7056eb66215ae1",
      "tree": "b6dac3ae97a0f94e2ca95d8fafcb4d244167e07a",
      "parents": [
        "2ffb703bf431d74326c88266b4ddaf225eb3c6ad"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue Nov 14 15:03:25 2017 -0800"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue Nov 14 15:39:55 2017 -0800"
      },
      "message": "cpplint: Use upstream cpplint\n\nAlso use CPPLINT.cfg instead of passing in extra flags to cpplint.py.\nThis unifies the handling and allows us to remove cpplint_presubmit\nwithout loss of functionality.\n\nBug: 68951293\nChange-Id: I6ece835440e3ac3f84fadc544307a9a5126a3e1c\n"
    },
    {
      "commit": "eab2b429ee036134f85620cac84a18b8df71fded",
      "tree": "9d2c09a0add8781e2bc1c465bfd98e5ab6977dea",
      "parents": [
        "8050453ed536fea8dbcd51a6f882b13d334e60ee",
        "8eaa8e59c95aac26cc072cdbaaccd8f3976f113d"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Nov 14 15:38:58 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 14 15:38:58 2017 +0000"
      },
      "message": "Merge \"Remove kIsVdexEnabled.\""
    },
    {
      "commit": "8eaa8e59c95aac26cc072cdbaaccd8f3976f113d",
      "tree": "613ebe58b921780913a417f09b0f2a0f686c89d8",
      "parents": [
        "5552e535951f2feb10bfd492b8abb54bd41a9f4b"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Nov 13 17:47:50 2017 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Nov 14 09:48:17 2017 +0000"
      },
      "message": "Remove kIsVdexEnabled.\n\nIt is now always assumed there is one.\n\nTest: test.py\nChange-Id: I8f3f5c722fb8c4a0f9ad8ea685d1a956bd0ac9ae\n"
    },
    {
      "commit": "961155050f6082f05410e8285e16caff9e7d6028",
      "tree": "42553c7c841f3bb09bac6663981bde961e9f4559",
      "parents": [
        "ea5ad3b50fde559e912c78c9a2c3091cdbf7e299",
        "7c201b8cc3965294a4a0c005477ccf379a8eb5f2"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Nov 14 09:32:15 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 14 09:32:15 2017 +0000"
      },
      "message": "Merge \"Remove obsolete environment variables.\""
    },
    {
      "commit": "7c201b8cc3965294a4a0c005477ccf379a8eb5f2",
      "tree": "63fda6fbdd5b8aebdace19177016d60301b2d743",
      "parents": [
        "a051f29bbbb7f237242e84294b8f2ced5f4b1acc"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Nov 10 15:37:19 2017 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Nov 13 09:29:45 2017 +0000"
      },
      "message": "Remove obsolete environment variables.\n\nI believe they became obsolete after:\nhttps://android-review.googlesource.com/#/c/platform/art/+/494123/\n\nTest: test.py\nChange-Id: Ia9f7085edd2c6287dbd4a694c26fbbad58d11e3f\n"
    },
    {
      "commit": "693bfbfce9867f19573d352bd754c81c2f0f91a4",
      "tree": "3b5880a4073869fc34d258b0778350a7907d08f8",
      "parents": [
        "4720046dfa1c3f396ac7dbcd3fe6179c1230bed1"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Nov 10 12:23:31 2017 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Nov 10 12:25:30 2017 -0800"
      },
      "message": "ART: Fix test dependencies and code\n\nLet profman target test correctly depend on profmand.\n\nCreate a debug version of dexlayout to be used in dexlayout_test.\nFix a bug in ProfileCompilationInfo referring to a nonexisting\nelement.\n\nTest: m test-art-host\nChange-Id: If2220f26c37c25a600399b2637f081c62cae9718\n"
    },
    {
      "commit": "4720046dfa1c3f396ac7dbcd3fe6179c1230bed1",
      "tree": "1f671f78f69b26077862fba8ed4c34d442e86758",
      "parents": [
        "a16fec549253638268dda3d83e6e34a500cbfc1c"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Nov 09 11:40:03 2017 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Nov 10 09:54:28 2017 -0800"
      },
      "message": "ART: Fix test dependencies\n\nEnsure we only depend on (installed) target binaries, to avoid\nbuilding host dependencies when not necessary.\n\nUse module names plus -host/-target to refer to the installed\nfiles, simplifying the test Makefiles.\n\nTest: art/tools/buildbot-build.sh --mode host\nTest: art/tools/buildbot-build.sh --mode target\nChange-Id: If6299487284af0b160c67408f9da421c69ca0e85\n"
    },
    {
      "commit": "cac31ad4c43a24a959a4d3652b8b46538bdc8c53",
      "tree": "fca3149e0ebf0817c859b9f7faa5098d230608c4",
      "parents": [
        "3b5df92d613bb72c8e6f8a766c60835d8313414f"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Nov 06 20:01:17 2017 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Nov 07 12:20:59 2017 -0800"
      },
      "message": "ART: Add compiler option for code deduplication\n\nAdd --deduplicate-code and --no-deduplicate-code to ease in\nexperiments with deduplication, e.g., profiling.\n\nAdd dex2oat test.\n\nTest: m test-art-host\nChange-Id: Ib6c7fe082f43c5f76c8463cc563e2503c9a50480\n"
    },
    {
      "commit": "36ea6b4a6e76fa0507e81bfad7af311c93cec389",
      "tree": "166fef79d93a5c337bbb22d5306699005c7cbb52",
      "parents": [
        "c2dca98b60427d064a472ed6e21f5bc4dd7627f1",
        "c8b95b2f67d9996a160a8d8467ad2e801b730604"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Nov 02 21:54:19 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Nov 02 21:54:19 2017 +0000"
      },
      "message": "Merge changes Idaefe0af,Ib5c12d46,Ieb28085e,Idffbb7f2\n\n* changes:\n  ART: Clean up global includes - jni headers\n  ART: Clean up global includes - zlib\n  ART: Clean up global includes - lz4\n  ART: Clean up global includes - icu4c\n"
    },
    {
      "commit": "9d3e8fa581d2848edbf2e071ad0baad4edc2f8a3",
      "tree": "0cfca535f77f2e977fea3c4b2f5463d8415c786f",
      "parents": [
        "811c33a62e3ae2f90273a6e5f6c36da79d8a970a",
        "a42e70403d85887f4d2340226334001f141dcdc9"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Nov 02 12:02:10 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Nov 02 12:02:10 2017 +0000"
      },
      "message": "Merge \"Add support for running ART gtests with Valgrind in local installations.\""
    },
    {
      "commit": "c8b95b2f67d9996a160a8d8467ad2e801b730604",
      "tree": "ddf5fbee7773cc24eba5ffbe1ce201e8a9b0c294",
      "parents": [
        "238e8fcd1d37ef75b85b0a84303d70776fe64495"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Nov 01 18:05:23 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Nov 01 21:08:57 2017 -0700"
      },
      "message": "ART: Clean up global includes - jni headers\n\nRemove the platform jni headers from the ART-global includes.\n\nTest: mmma art\nChange-Id: Idaefe0afa71d882b8f164d7c68ea84616c2883ed\n"
    },
    {
      "commit": "238e8fcd1d37ef75b85b0a84303d70776fe64495",
      "tree": "ae9e770a0db2fd09a6914f4f2dcf4e98bd3041e6",
      "parents": [
        "f24dfb082abc4715024fe7d5e80fdba6b4e08ba2"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Nov 01 17:10:10 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Nov 01 21:08:29 2017 -0700"
      },
      "message": "ART: Clean up global includes - zlib\n\nRemove zlib from the ART-global includes.\n\nTest: mmma art\nChange-Id: Ib5c12d46aae9cc1288c7a4f2f7e0f60444f2c6e0\n"
    },
    {
      "commit": "f24dfb082abc4715024fe7d5e80fdba6b4e08ba2",
      "tree": "85536b9259695ac4360261a0b03a4c7c1ea589c0",
      "parents": [
        "fdb7a61597bd3e836d43d78dd744719bf92b17a1"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Nov 01 15:41:25 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Nov 01 21:07:27 2017 -0700"
      },
      "message": "ART: Clean up global includes - lz4\n\nRemove lz4 from the ART-global includes.\n\nTest: mmma art\nChange-Id: Ieb28085e9763631a723799428a77d02df0ba3c78\n"
    },
    {
      "commit": "fdb7a61597bd3e836d43d78dd744719bf92b17a1",
      "tree": "9b3217fcb45ca990304cb4f64dde3845c5399505",
      "parents": [
        "a4d89d9bb911f7f3d0a6e4d3b45372e0aea6476d"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Nov 01 15:11:13 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Nov 01 21:07:27 2017 -0700"
      },
      "message": "ART: Clean up global includes - icu4c\n\nRemove icu4c from the ART-global includes.\n\nTest: mmma art\nChange-Id: Idffbb7f29af35d78e4f3aa09d1d3480153e151fa\n"
    },
    {
      "commit": "84b6933525d61048c5f080842322e223dff4a23b",
      "tree": "04947babd81d2d6a5755f97c3bb86174deb7a439",
      "parents": [
        "eae5845c6144cd32c06334893244fc5c1eb21d9a"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Nov 01 14:23:17 2017 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Nov 01 14:23:17 2017 -0700"
      },
      "message": "Follow new type for compile_multilib\n\nAlso move AppendProperties out of the environment conditional so\nchanges to types don\u0027t break obscure builds.\n\nTest: m checkbuild\nChange-Id: Icac25e6df64c3befdafd8ff002bbeb67810c357a\n"
    },
    {
      "commit": "a42e70403d85887f4d2340226334001f141dcdc9",
      "tree": "acb0935e9a9f393efde43f18c2d9ae7b218a4e18",
      "parents": [
        "5751dc831ffd8acb089c2aff2e2ddf18f89da975"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Oct 30 17:24:43 2017 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Oct 30 18:07:39 2017 +0000"
      },
      "message": "Add support for running ART gtests with Valgrind in local installations.\n\nTest: m valgrind-test-art-target-gtest with ART_TEST_ANDROID_ROOT\u003d/data/local/tmp/system\nBug: 29282211\nChange-Id: I15099c31f0d8bd9edaf00837e8e82c47379706f1\n"
    },
    {
      "commit": "88a6296e13cae96157a451efa5776d1fecb05912",
      "tree": "5c8e3eec3760aa014ec4c58e8aab1f180c48fde7",
      "parents": [
        "9216156f27edf885e9d10a266cdb1f1daa9bf02d",
        "bcc635212fc051520d69ecebd6038c899044b267"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Oct 25 03:23:17 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Oct 25 03:23:17 2017 +0000"
      },
      "message": "Merge \"Add missing ManyMethods dependency\""
    },
    {
      "commit": "bcc635212fc051520d69ecebd6038c899044b267",
      "tree": "62065c9eecc7a4cbafacdd396a1fb3ac39ea4a36",
      "parents": [
        "9e842d3e7d6102d964178e36e5d596ca91895147"
      ],
      "author": {
        "name": "Alex Klyubin",
        "email": "klyubin@google.com",
        "time": "Tue Oct 24 13:27:47 2017 -0700"
      },
      "committer": {
        "name": "Alex Klyubin",
        "email": "klyubin@google.com",
        "time": "Tue Oct 24 16:02:47 2017 -0700"
      },
      "message": "Add missing ManyMethods dependency\n\ntest-art-host-gtest-dex2oat_test depends on ManyMethods and fails if\nthat artifact wasn\u0027t built. This commit explicitly declares this\ndependency and thus unbreaks test-art-host-gtest-dex2oat_test.\n\nTest: make clean \u0026\u0026 make test-art-host-gtest-dex2oat_test\nBug: 66697305\nChange-Id: Ie922119f6ded6a204ad37104eefb9b4271d2d0bc\n"
    },
    {
      "commit": "715f43e1553330bc804cea2951be195473dc343d",
      "tree": "55e143005efe10e8448c91eff6b88a635af2a3f6",
      "parents": [
        "9e842d3e7d6102d964178e36e5d596ca91895147"
      ],
      "author": {
        "name": "Chris Larsen",
        "email": "chris.larsen@imgtec.com",
        "time": "Mon Oct 23 11:00:32 2017 -0700"
      },
      "committer": {
        "name": "Chris Larsen",
        "email": "chris.larsen@imgtec.com",
        "time": "Mon Oct 23 11:00:32 2017 -0700"
      },
      "message": "MIPS32: Improve stack alignment, use sdc1/ldc1, where possible.\n\n- Ensure that SP is a multiple of 16 at all times, and\n- Use ldc1/sdc1 to load/store FPU registers from/to 8-byte-aligned\n  locations wherever possible.\n\nUse `export ART_MIPS32_CHECK_ALIGNMENT\u003dtrue` when building Android\nto enable the new runtime alignment checks.\n\nTest: Boot \u0026 run tests on 32-bit version of QEMU, and CI-20.\nTest: test/testrunner/testrunner.py --target --optimizing --32\nTest: test-art-host-gtest\nTest: test-art-target-gtest\n\nChange-Id: Ia667004573f419fd006098fcfadf5834239cb485\n"
    },
    {
      "commit": "f39208f6787928151153795a3cdae28cba964df6",
      "tree": "59ea0bc7ddf2b20ecf501e3ddca7d71ebb9df851",
      "parents": [
        "5ef8128014b1796ae56dba3031f64ce6bfef4496"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Oct 19 15:06:59 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Oct 19 18:01:03 2017 -0700"
      },
      "message": "ART: Add abort-on-soft-verifier-error\n\nAdd an option to abort compilation if any class fails compile-time\nverification.\n\nBug: 65318848\nBug: 67358823\nTest: m test-art-host-gtest-dex2oat_test\nChange-Id: I5d2a7cd1d2ed048ab39d6f787ecc9eb2f41d3d77\n"
    },
    {
      "commit": "057f1e4cfb6debd496b03c9f97de6c058aa6d850",
      "tree": "dad8f9f0a42f41646d6dd0fcf16532f88f67c106",
      "parents": [
        "f856934689a289b2bc82462e8757a170242bb44d"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue Oct 03 14:11:48 2017 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Mon Oct 16 13:45:12 2017 -0700"
      },
      "message": "Use target.linux for all linux kernel based targets\n\nNow in Android.bp files, target.linux applies to all targets running a\nlinux kernel (android, linux_glibc, linux_bionic). So common\nflags/sources/etc can be combined instead of copying them to each\ntarget.\n\nTest: m\nChange-Id: I33ca98425abdf4cae7a47aefa9b8708a1a41fa82\n"
    },
    {
      "commit": "8cdfac752808784d29185710095ad104922cd861",
      "tree": "153b591773c38de8d8448b25eacba9b53e8366d3",
      "parents": [
        "3069f90c490cf2d234dc54795cdfd39a898b5aa4",
        "69107b3df192b1c834cb88c1aeec748e24c700e1"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 03 20:12:57 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Oct 03 20:12:57 2017 +0000"
      },
      "message": "Merge \"Disable D8 for a subset of the tests\""
    },
    {
      "commit": "026b3d4604e0c15b45da1ccefbca6a9daf0236c8",
      "tree": "8f7a0d8ec7057651704182247eff7497903fad89",
      "parents": [
        "498e8ed7cee16eea695fe96e3e626a97bf97ac44",
        "99988f8dcad80e5baa02be571a9ec7c2540f1544"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue Oct 03 02:30:05 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Oct 03 02:30:05 2017 +0000"
      },
      "message": "Merge \"Rename target.linux[_x86[_64]] to target.linux_glibc[_x86[_64]]\""
    },
    {
      "commit": "69107b3df192b1c834cb88c1aeec748e24c700e1",
      "tree": "99ea4de7888e0c939161a6a7f9aab080420c9894",
      "parents": [
        "f67f115423c9ef5aa62a33c12670cd8f89457c9c"
      ],
      "author": {
        "name": "Alan Leung",
        "email": "acleung@google.com",
        "time": "Mon Sep 18 17:31:17 2017 -0700"
      },
      "committer": {
        "name": "Alan Leung",
        "email": "acleung@google.com",
        "time": "Mon Oct 02 16:56:57 2017 -0700"
      },
      "message": "Disable D8 for a subset of the tests\n\nInstead of using D8 for those tests, we will continue to run them\nwith DX instead.\n\nKeep in mind that as long as D8 is not default yet. This CL is\nno-op for every build.\n\nBug: 65168732, 65850560, 65203529\nTest: USE_D8\u003dtrue ANDROID_COMPILE_WITH_JACK\u003dfalse art/test.py -j20 --host -b\n\nFor 65168732:\n *-checker-*/build\n\nFor 65850560:\n 910-methods/build\n 911-get-stack-trace/build\n 913-heaps/build\n\nFor 65203529:\n 1929-exception-catch-exception/build\n\nChange-Id: I281b013dd93e10dfde0731d05b8d662232861ba5\n"
    },
    {
      "commit": "822cf6a4d02e45050e117e2e6d15059ca09976df",
      "tree": "7d0ebd98903f474aff61e78875f5605672b793c7",
      "parents": [
        "f67f115423c9ef5aa62a33c12670cd8f89457c9c"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Oct 02 13:35:15 2017 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Oct 02 14:09:14 2017 -0700"
      },
      "message": "Delete jack support\n\nRemove references to jack from makefiles.  There are still\nreferences in test scripts that will need to be cleaned up.\n\nBug: 65302138\nTest: m -j test-art-host\nChange-Id: I74026197013cad7a5d5977f9462221bc7b864f06\n"
    },
    {
      "commit": "99988f8dcad80e5baa02be571a9ec7c2540f1544",
      "tree": "de9794012369be66763e6c76ea88fd752469c7e2",
      "parents": [
        "f67f115423c9ef5aa62a33c12670cd8f89457c9c"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Mon Oct 02 10:41:07 2017 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Mon Oct 02 10:41:07 2017 -0700"
      },
      "message": "Rename target.linux[_x86[_64]] to target.linux_glibc[_x86[_64]]\n\nIn the future, target.linux will apply to all targets running a linux kernel\n(android, linux_glibc, linux_bionic). So move all current users to the specific\nlinux_glibc.\n\nThere will be another cleanup pass later that will move some instances back to\ntarget.linux if the properties should be shared with target.android and\ntarget.linux_bionic, but target.linux needs to be removed first.\n\nTest: out/soong/build.ninja identical before/after\nChange-Id: Iea59380a4936c6d0555534d69b891b8ffdb9dfb6\nExempt-From-Owner-Approval: build system cleanup\n"
    },
    {
      "commit": "9389ae7309180f4dccc3c34e26798ed428f0d054",
      "tree": "d8ff0d871506ad2559c505b92495b1f5125fc4f6",
      "parents": [
        "350546494d6964daee2b9236820b7f85b88dfd59"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Wed Sep 27 11:58:43 2017 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Wed Sep 27 15:11:33 2017 -0700"
      },
      "message": "Simplify Android.bp files\n\nRemove clang: true, it\u0027s the default.\n\nRemove target.android.shared_libs \"libdl\", since it\u0027s already part of\nthe system_shared_libs list.\n\nRemove host_ldlibs, since -ldl and -lpthread are automatically added on\nDarwin and Linux. -lrt is automatically added on Linux.\n\nTest: mmma art\nChange-Id: I18aa6aa5b49cad31caf6820b1974057ad14a2798\n"
    },
    {
      "commit": "7452797678c4345d4a9e65b03e00af703c2c5fe0",
      "tree": "fd23d118a6317737a692402a648217418c3d7b99",
      "parents": [
        "3c683150bcf2f1cabbe2e5f9d10d8c670b67fb7e"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Nov 29 15:57:32 2016 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Sep 20 10:58:42 2017 +0100"
      },
      "message": "Refactor linker files from compiler/ to dex2oat/.\n\nThis shifts some code from the libart-compiler.so to dex2oat\nand reduces memory needed for JIT. We also avoid loading the\nlibart-dexlayout.so for JIT but the memory savings are\nminimal (one shared clean page, two shared dirty pages and\nsome per-app kernel mmap data) as the code has never been\nneeded in memory by JIT.\n\naosp_angler-userdebug file sizes (stripped):\n  lib64/libart-compiler.so: 2989112 -\u003e 2671888 (-310KiB)\n  lib/libart-compiler.so: 2160816 -\u003e 1939276 (-216KiB)\n  bin/dex2oat: 141868 -\u003e 368808 (+222KiB)\nLOAD/executable elf mapping sizes:\n  lib64/libart-compiler.so: 2866308 -\u003e 2555500 (-304KiB)\n  lib/libart-compiler.so: 2050960 -\u003e 1834836 (-211KiB)\n  bin/dex2oat: 129316 -\u003e 345916 (+212KiB)\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host\nTest: cd art/; mma; cd -\nChange-Id: If62f02847a6cbb208eaf7e1f3e91af4663fa4a5f\n"
    },
    {
      "commit": "27bd4dd81962b0e59df9318ae8efc83df99ebe0a",
      "tree": "18ac04bc1d5ff9cf59fd08c353b8cf3d9e1eb6f2",
      "parents": [
        "2ee17e69110a9ef98ea8c94219c7da23b918ef3f"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Aug 23 11:27:08 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Aug 23 16:06:00 2017 -0700"
      },
      "message": "ART: Use platform_include header library\n\nUse nativehelper\u0027s platform_include header library instead of a\ndirect include.\n\nTest: mmma art\nChange-Id: Ided44668b00c5822d2de803ac8058086cf70f2be\n"
    },
    {
      "commit": "24be74dbffea935fa1f07d112611fa03d4f3e6af",
      "tree": "d1e6ad2ed3457244c7bc716292e4a3b241155764",
      "parents": [
        "0cb2cff16663d78665c99c495088fcbf74236028",
        "cf2bd735fd85f19b7388a64b66d2b2f7169c2cdd"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Aug 08 18:49:23 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 08 18:49:23 2017 +0000"
      },
      "message": "Merge \"Use absolute path for art/tools/cpplint.py --root\""
    },
    {
      "commit": "cf2bd735fd85f19b7388a64b66d2b2f7169c2cdd",
      "tree": "3f63c346ab1cc8725a16603a8283bad5b48d23e8",
      "parents": [
        "4c3de20b11c097875ed45a09cbd13c88f2582422"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Sun Jul 30 10:32:01 2017 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Jul 31 13:04:47 2017 -0700"
      },
      "message": "Use absolute path for art/tools/cpplint.py --root\n\nart/tools/cpplint.py still fails when run with --root\u003d. if the\n.git directory is missing.  Replace --root\u003d. with --root\u003d$(pwd)\nto give it an absolute path.\n\nBug: 34787652\nTest: mv art/.git art/.git.bak; m -j cpplint-art-phony; mv art/.git.bak art/.git\nChange-Id: I56c2acf54090e53a02d52fb12ffd2e5a862ede4f\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": "84b65e977302e1cf16d188636c22c164c7793554",
      "tree": "9046e2fabec005707f413d9f92e8cec791bd298d",
      "parents": [
        "8e7ea37bb08304cf420db26f0c2525aa31bb32f6",
        "f60525793a1fd784ce7de82f18e7ad9de242c431"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Fri Jul 21 19:43:30 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jul 21 19:43:30 2017 +0000"
      },
      "message": "Merge \"Assume all x86/x86_64 hosts support at least sse4.x/popcount.\""
    },
    {
      "commit": "f60525793a1fd784ce7de82f18e7ad9de242c431",
      "tree": "5b63ffbc991a2b80ef8e779b975cf737c6d5ab3c",
      "parents": [
        "8fe41cf9c995d321da607fa45ad0e752444696a1"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu Jul 20 16:47:45 2017 -0700"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu Jul 20 17:03:35 2017 -0700"
      },
      "message": "Assume all x86/x86_64 hosts support at least sse4.x/popcount.\n\nNote: a small change with potentially big consequences\n      please review carefully\n\nRationale:\n\nSince all true Android x86/x86_64 devices and all x86/x86_64 hosts support\nat least sse4.x/popcount, ideally we would simply drop support for\nanything \"lower\". However, since the emulator running on x86/x86_64\nonly supports as much as the underlying host (a bad design to start\nwith!), we cannot do the full drop until emulator support includes\nsse4.x/popcount.\n\nThis CL is the next best thing to get much more SIMD testing \"out there\"\nIt assumes that all x86/x86_64 hosts support at least sse4.x/popcount.\nThis firstly implies that the ART runtime binary itself may exploit\nthese features. Secondly, this implies thatthe ART runtime passes these\nfeature flags to dex2oat and JIT by calling the method\nInstructionSetFeatures::FromCppDefines(). Since invoking dex2oat\ndirectly does not pick up these flags, cross-compiling from a\nx86/x86_64 host to a x86/x86_64 target should not be affected.\n\nBug: 63585550\n\nTest: test-art-host and test-art-target (FUGU)\n\nChange-Id: I93736cd7b781e4432f3cea036368e230af3d03d0\n"
    },
    {
      "commit": "fcc7d6728ee94e0847af0a628f04bde3bb19e4ce",
      "tree": "ee97028b4125cd734b3f4fc98af543e46d67b979",
      "parents": [
        "57fe2725629681c8a68f6ba5b58d87304ca3f0b1"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jul 19 10:30:22 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jul 19 17:06:01 2017 -0700"
      },
      "message": "ART: Enable full sanitization under ASAN host by default\n\nEnable ART_ENABLE_ADDRESS_SANITIZER by default when SANITIZE_HOST\nis set.\n\nBug: 31098551\nTest: art/test/testrunner/run_build_test_target.py art-gtest-asan\nTest: art/test/testrunner/run_build_test_target.py art-asan\nChange-Id: I3478113b5056b0197ead931312c0201483162da5\n"
    },
    {
      "commit": "3d931dc76aa3cd9787bfc7d3f42bc819b57cdcc0",
      "tree": "a0691610e70d9fbc5755a93dcb7cd1e5add13160",
      "parents": [
        "b98d384eb424ad7e1dc9816392ded33dce0e0372",
        "57d0accc081c1779edb604ab86e5a4c0cfba16eb"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jul 18 20:57:03 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jul 18 20:57:03 2017 +0000"
      },
      "message": "Merge \"Create a class loader context starting from an existing ClassLoader\""
    },
    {
      "commit": "57d0accc081c1779edb604ab86e5a4c0cfba16eb",
      "tree": "15af07023c0576e36e4fcfb78dd6e29890edcfd2",
      "parents": [
        "7b0648aa7cb4b7a58e73bf353e031dfe4553d9d7"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Jul 11 17:41:30 2017 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Jul 18 11:42:33 2017 -0700"
      },
      "message": "Create a class loader context starting from an existing ClassLoader\n\nExtend ClassLoaderContext to be able to generate a context from an\nexisting class loader.\n\nThis will be used in extending the duplicate class check to cover\nDelegateLastClassLoaders.\n\nMost of the functionality is migrated from OatFileManager with some\ncleanups consisting of extra docs and more conservative checks on the\nintegrity of the class loader chain.\n\nTest: m test-art-host\nBug: 38138251\nChange-Id: If7c18cb75bfc9e6784676f96a666bf13b04c8b8b\n"
    },
    {
      "commit": "93764b8ee58d54118904b8f4473628451e568893",
      "tree": "729758b4420920b7bb7070dbdac1ecd86810b2a8",
      "parents": [
        "d317295ed07384c69d5890d6b17b80d57139a082"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Jul 17 14:51:53 2017 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Jul 17 18:01:17 2017 -0700"
      },
      "message": "Generalize atomic_method_ref_map to support dex references\n\nGeneralize atomic method ref map to support dex references instead\nof only method references.\n\nThe goal is to use this in a future CL to replace compiled_classes_.\n\nTest: test-art-host\n\nChange-Id: Ic6d1e619584f790eea68f5160fa0fcd664524cd7\n"
    },
    {
      "commit": "65d793bfa91085db5f84b6ee90a3dcdafcafed1b",
      "tree": "c94b0a8ea3a08a8c29feb4fcccbc0793e85f8ad5",
      "parents": [
        "731af335f4e15e82b8972d63b6424d5228f06eec",
        "9983e302384c12a975c8d2d5ae239f79fd8e1996"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Sat Jul 15 08:58:21 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jul 15 08:58:21 2017 +0000"
      },
      "message": "Merge \"Remove the old ARM code generator from ART\u0027s Optimizing compiler.\""
    },
    {
      "commit": "6744a5cedfca2964e19a204e9cb7acbe55937dda",
      "tree": "84f3f234740226edee03de3f927738db33405620",
      "parents": [
        "2d0fe4ca6906b4215646f1db99b06f927791f2c6"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Jul 14 12:45:27 2017 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Jul 14 13:19:07 2017 -0700"
      },
      "message": "Always pass --root to cpplint\n\nMac builds were sometimes flaky when running cpplint.py because\nthe .git directory is sometimes removed when the disk is almost\nfull, which causes cpplint.py to fail to autodetect the project\nroot.  Change \"Pass --root to cpplint.\"\n(I6d418979a9bdceefc7a2c19297a7cc9aacb3e83f) fixed a similar\nproblem when running inside of gitc, which doesn\u0027t have .git\ndirectories, but use ANDROID_BUILD_TOP, which is only set if\nlunch has been run.  It also didn\u0027t set --root for some of the\nphony targets.\n\nBug: 34787652\nTest: m -j cpplint-art-phony\nChange-Id: Ie0eb9d9d038f56a661750bb0f782321aba314a37\n"
    },
    {
      "commit": "9983e302384c12a975c8d2d5ae239f79fd8e1996",
      "tree": "4e4d269fe1a3d4f0f1b93cd972adab9f17aab8e0",
      "parents": [
        "bac2bd1c2fbdd94f4d4dfe83d8451f655e875e36"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Jul 14 14:34:22 2017 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Jul 14 17:25:39 2017 +0100"
      },
      "message": "Remove the old ARM code generator from ART\u0027s Optimizing compiler.\n\nThe AArch32 VIXL-based code generator has been the default\nARM code generator in ART for some time now. The old ARM\ncode generator does not compile anymore; retiring it.\n\nTest: test.py\nBug: 63316036\nChange-Id: Iab8fbc4ac73eac2c1a809cd7b22fec6b619755db\n"
    },
    {
      "commit": "5ebf7dd740062a391610bb6707fd6986d4e20298",
      "tree": "9d02583cc798afd3fab33e51f2c64aef5045b129",
      "parents": [
        "c60484869f174919b3d61477ead953b0f21a1ce4",
        "dbf0e0f6aa7fc197b9aa9e04bda527354f1ef2bd"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jul 11 19:08:14 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jul 11 19:08:14 2017 +0000"
      },
      "message": "Merge \"ART: Add ART_ENABLE_ADDRESS_SANITIZER as env variable\""
    },
    {
      "commit": "dbf0e0f6aa7fc197b9aa9e04bda527354f1ef2bd",
      "tree": "0fd919e4f615d1ea2ea785fb45983c8c85d02a62",
      "parents": [
        "421dbc20047e9cca764c1cf325f1bd6fbeea9f68"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jul 11 08:34:48 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jul 11 08:39:47 2017 -0700"
      },
      "message": "ART: Add ART_ENABLE_ADDRESS_SANITIZER as env variable\n\nAccept ART_ENABLE_ADDRESS_SANITIZER in art.go.\n\nBug: 31098551\nTest: ART_ENABLE_ADDRESS_SANITIZER\u003dtrue SANITIZE_HOST\u003daddress m test-art-host\nChange-Id: I7602a7b4c1d9a8cd4e08ba764769dc194f611fd5\n"
    },
    {
      "commit": "87e2cb64ab02d9bdc48255130c67168c809c5f62",
      "tree": "2c4610937776365e440f9ec689daf737b111c967",
      "parents": [
        "c5e4a53252bda0052fb642424e9f5ba908603eb8"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Jun 13 21:48:45 2017 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Jul 10 17:08:06 2017 -0700"
      },
      "message": "Add support for processing class loader contexts\n\nInitial support for recognizing the class loader contexts.\n\nIn order to correctly compile dex files which at runtime are loaded with\na non-trivial class loader chain we need to make dex2oat aware of the\nprecise runtime context.\n\nThis CL adds the infrastructure to process arbitrary and arbitrary chain\nof class loaders. ClassLoaderContext is able to parse a class loader\nspec from a string and create the runtime structure based on it.\n\nThe integration with dex2oat and oat file assistant will follow up.\n\nThe string specification looks like\n\"PCL[lib1.dex:lib2.dex];DLC[lib3.dex]\"\n\nIt describes how the class loader chain should be build in order to\nensure classes are resolved during dex2aot as they would be resolved at\nruntime. This spec will be encoded in the oat file. If at runtime the\ndex file will be loaded in a different context, the oat file will be\nrejected.\n\nThe chain is interpreted in the natural \u0027parent order\u0027, meaning that\nclass loader \u0027i+1\u0027 will be the parent of class loader \u0027i\u0027. The\ncompilation sources will be added to the classpath of the last class\nloader. This allows the compiled dex files to be loaded at runtime in a\nclass loader that contains other dex files as well (e.g. shared\nlibraries).\n\nNote that we accept chains for which the source dex files specified\nwith --dex-file are found in the classpath. In this case the source dex\nfiles will be removed from the any class loader\u0027s classpath possibly\nresulting in empty class loaders.\n\n* This is the first CL, which adds the infrastructure for processing\na class loader context. Currently it CHECKS that only a single\nPathClassLoader is created.\n\nTest: m test-art-host\nBug: 38138251\nChange-Id: I312aa12b5732288f3c1df4746b5775a32e0bfb04\n"
    },
    {
      "commit": "7b46197bc2459b3324e0049277a911e31414bb52",
      "tree": "d1415e7d77bd9110194878f93222f057fabbbb9c",
      "parents": [
        "0656044bf8b1d5053cdea6615f4d0aebad5b64b8",
        "cdd4912eef02cce1ae4ec95e025794dced089466"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Jul 06 21:12:54 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jul 06 21:12:54 2017 +0000"
      },
      "message": "Merge changes I8d0f5341,Iced0de7c,I742cd614\n\n* changes:\n  Add fast path to FindClass for DelegateLastClassLoader\n  Add DelegateLastClassLoader to the list of WellKnownClassLoaders\n  Refactor FindClass code in class linker\n"
    },
    {
      "commit": "cdd4912eef02cce1ae4ec95e025794dced089466",
      "tree": "d212b7d061f5dad7861945b9d86cea728e68d133",
      "parents": [
        "7865ac7e233b8a8dcfd6ca8466d30b39a8089c3e"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Jul 05 20:09:53 2017 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Jul 06 12:32:16 2017 -0700"
      },
      "message": "Add fast path to FindClass for DelegateLastClassLoader\n\nTest: m test-art-host\nBug: 38138251\nChange-Id: I8d0f534195c31a5d291e38b0eea47534a5d471fb\n"
    },
    {
      "commit": "ca06ea33e980059f17dde3180b85864871feb161",
      "tree": "b4feae1394aef6f620dd5e65824f71318301bc44",
      "parents": [
        "2db58b6e0f0cb09740fd0e583b3cd6c91c73f917"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 27 10:38:55 2017 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 27 10:38:55 2017 -0700"
      },
      "message": "Refactor module registration\n\nRefactor module registration so that it doesn\u0027t need to separately\ntrack properties.\n\nTest: builds, no change to out/soong/build.ninja\nChange-Id: I152f019d227d8fa9872742c03cf2381c674d675b\n"
    },
    {
      "commit": "2db58b6e0f0cb09740fd0e583b3cd6c91c73f917",
      "tree": "6d297706a45d91f0767d77c19a82f51e4a2df369",
      "parents": [
        "721276bf926bdd5e3097830e20f6b6015409e28f"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 27 10:38:31 2017 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 27 10:38:31 2017 -0700"
      },
      "message": "gofmt -w build/art.go\n\nTest: builds\nChange-Id: Ib65b7c51cf61db06943a81e6a5f3a13c32d9df46\n"
    },
    {
      "commit": "19df565ffcb30cb7b5217f074771078f0bb6cc1c",
      "tree": "dd9f3283fb8e61f8cbe3d9e60d45de354eaa2330",
      "parents": [
        "34bf6221dea0a1d81fc271b9cb8b7cfae18c41df",
        "f70fe3d0b0b29c955a4f7310beae1cfb926ca5c7"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jun 22 20:27:34 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 22 20:27:34 2017 +0000"
      },
      "message": "Merge \"Add dex2oat support for profile based image creation\""
    },
    {
      "commit": "f70fe3d0b0b29c955a4f7310beae1cfb926ca5c7",
      "tree": "d69a44ce49c1745c2c2e08680915c7a1ce587693",
      "parents": [
        "7888b59b4542e15dd061047e4cb34f795cc2354c"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jun 21 15:24:02 2017 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jun 22 11:11:50 2017 -0700"
      },
      "message": "Add dex2oat support for profile based image creation\n\nAllow creating a boot image with only a profile without requiring\nany of --compiled-classes, --compiled-methods, or --image-classes.\n\nTo do so, you need to pass --profile-file and\n--compiler-filter\u003dspeed-profile.\n\nAdded a test dex2oat_image_test to verify behavior. This test covers:\n--compiled-classes\n--compiled-methods\n--image-classes\n--profile-file\n\nTest: test-art-host-gtest-dex2oat_image_test\n\nBug: 37966211\n\nChange-Id: I36d41b1c6e6560e6b3494b1df7024a4450ed0c0e\n"
    },
    {
      "commit": "69489fad1e34c005fbe110bfae2a3c6bff879d4e",
      "tree": "23c50305c52cf076cedd3bfd496a2adf0d1e46b3",
      "parents": [
        "8979f71079ec18fa8d3c0915549ec03ee1fbadf5"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Jun 08 18:03:25 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 21 21:30:59 2017 -0700"
      },
      "message": "ART: Fix old warnings\n\nFix Wconstant-conversion warnings.\n\nPartially reverts commit df53be273509dd43725870fb20a2c7d71f7fbfd3.\n\nBug: 28149048\nBug: 29823425\nTest: m\nTest: m test-art-host\nChange-Id: Ib377150690c0f2c2142e4b91f2144e2bcaa020ef\n"
    },
    {
      "commit": "dd8aa320910eb26c457a9ac82026a6d5d59bfa80",
      "tree": "67ec7ecc0540645fa0f193384c6447f044960cea",
      "parents": [
        "b96ed2c271a56fb8be0c8f30231710095e66a201"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Wed Jun 21 16:34:35 2017 -0700"
      },
      "committer": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Wed Jun 21 17:06:56 2017 -0700"
      },
      "message": "build: disable -Wmissing-noreturn for clang-tidy\n\nClang\u0027s -Wmissing-noreturn warning is aggressive; it\u0027ll complain about a\nmissing noreturn on code like:\n\nconst bool kFooEnabled \u003d false;\nvoid foo() { if (!kFooEnabled) abort(); }\n\nSince we have special markings on CHECK(bar) that are only applied when\nwe\u0027re running the analyzer, and they essentially turn CHECK(bar) into\n`if (!bar) abort();`, we have 20 or so false-positives in ART for\n-Wmissing-noreturn. See e.g. art::gc::Heap::AllowNewAllocationRecords().\n\nPlease note that this does not disable -Wmissing-noreturn for clang.\nOnly the static analyzer.\n\nIf you\u0027re interested in why we\u0027re not doing this for all of Android,\nplease see https://android-review.googlesource.com/#/c/417028/ . (In\naddition, art/ is also the only place we\u0027re seeing this aggressive\nbehavior actually cause issues.)\n\nBug: 32619234\nTest: mma + warn.py. All missing-noreturn warnings are now gone.\nChange-Id: I0c7761579482aa16b88156e9caacc88052ae421c\n"
    },
    {
      "commit": "2e4fe5ad017f41bc12cf58a41169c8ae8a514970",
      "tree": "fe88df39570a57509db7a9183b378a946abf345d",
      "parents": [
        "18b4ed19eb7970b9dfcc3246562c6fabe57176ee",
        "7fb46653450fc577638e2e327bdb5c525643cae9"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 20 18:17:12 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 20 18:17:15 2017 +0000"
      },
      "message": "Merge \"build: always define NDEBUG in the static analyzer\""
    },
    {
      "commit": "7fb46653450fc577638e2e327bdb5c525643cae9",
      "tree": "7455343725c13809825ba67dd3b252b14cfb848f",
      "parents": [
        "53ac3130edd9c9273f95e3ba0bc5e80f6d2b3f2d"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Fri Jun 16 15:35:33 2017 -0700"
      },
      "committer": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Tue Jun 20 18:15:59 2017 +0000"
      },
      "message": "build: always define NDEBUG in the static analyzer\n\nART enforces some invariants only in debug builds, denoted by DCHECKs,\n\"if (kIsDebugBuild)\" and the like. To always expose these invariants to\nthe static analyzer and not trigger warnings for the release build,\nalways compile in debug mode, that is, ensure that NDEBUG is undefined.\n\nBug: 32619234\nTest: test-art-host. mma showed no false-positive that this was meant\nto silence.\nChange-Id: I24906b048b9343966d60755cf92be7d670878d81\n"
    },
    {
      "commit": "4cf4e365a9deeb1f55f95738661ac61183e4da73",
      "tree": "2c4acc61cf6ed45857bfd6f5da98c12559ebc27d",
      "parents": [
        "2dcfe269a6c863a91e614dd6134c995d6347fdf7",
        "2a33775e1500040a32e20c1e1aeb45e6c5416a15"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jun 16 16:15:29 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 16 16:15:31 2017 +0000"
      },
      "message": "Merge \"Revert \"Revert \"test: Add desugar support to run-test\"\"\""
    },
    {
      "commit": "2a33775e1500040a32e20c1e1aeb45e6c5416a15",
      "tree": "9b1af0d21383a8377277a714dce4658e031b1573",
      "parents": [
        "75e7c9cc3db9547127dbc706f9a4fade54a41600"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri Jun 16 14:34:40 2017 +0000"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri Jun 16 14:34:40 2017 +0000"
      },
      "message": "Revert \"Revert \"test: Add desugar support to run-test\"\"\n\nThis reverts commit 75e7c9cc3db9547127dbc706f9a4fade54a41600.\n\nChange-Id: I7932e27b5307bbe7b60184dd5faf24bd336aa63a\n"
    },
    {
      "commit": "75e7c9cc3db9547127dbc706f9a4fade54a41600",
      "tree": "65d634cf46190e02060f2a47929cef28e9060ca2",
      "parents": [
        "86b0db4b7b892f27c738d3d3adab28c143120ac8"
      ],
      "author": {
        "name": "Mariano Giardina",
        "email": "giardina@google.com",
        "time": "Thu Jun 15 11:32:51 2017 +0000"
      },
      "committer": {
        "name": "Mariano Giardina",
        "email": "giardina@google.com",
        "time": "Thu Jun 15 11:35:00 2017 +0000"
      },
      "message": "Revert \"test: Add desugar support to run-test\"\n\nCollateral effect after rollback \nhttps://android-review.googlesource.com/#/c/416319/\n\nThis reverts commit 86b0db4b7b892f27c738d3d3adab28c143120ac8.\n\nChange-Id: Icc8e2acabbd2ffe1ad290cd641da70cf63a7041c\n"
    },
    {
      "commit": "0385805f2e183f1defceb5b9d9ee63222a754573",
      "tree": "a81d84527b3fccc0f099221be5d08cb5122d824a",
      "parents": [
        "4f647ebe819667658957c2c3b6bceec3b572e853"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon May 01 08:17:24 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 14 18:56:01 2017 -0700"
      },
      "message": "ART: Add ASAN_OPTIONS to gtest rules\n\nAdd detect_leaks\u003d1 to gtest run rules on the host.\n\nBug: 31098551\nTest: m SANITZE_HOST\u003daddress test-art-host-gtest\nChange-Id: Ie1a6dff1ebb3099df1f28e8e8dae230668f405de\n"
    },
    {
      "commit": "86b0db4b7b892f27c738d3d3adab28c143120ac8",
      "tree": "9b1af0d21383a8377277a714dce4658e031b1573",
      "parents": [
        "19a4d0f01f850b86921e67b3f1d9834d5ce94ee3"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue Jun 13 15:57:34 2017 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed Jun 14 16:33:38 2017 -0700"
      },
      "message": "test: Add desugar support to run-test\n\nThis fixes 17 tests with javac/dx, but breaks 5 new ones.\n\nNet tests fixed: 12. Remaining broken tests: 42.\n\nTest: ANDROID_COMPILE_WITH_JACK\u003dfalse art/test.py\nBug: 36902714\nChange-Id: I41e498d59a57e10bb37cef1bd1f197cc6defff9e\n"
    },
    {
      "commit": "db40eac139e2bc2b7b450277f4ba63c131d30dbc",
      "tree": "e91b75a9fc69c28b06e91c9028d7fc29dcfaa1a0",
      "parents": [
        "16d59b2b0ff202be99cbe24830e8a5080b774357"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Jun 09 18:34:11 2017 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Jun 12 18:10:35 2017 -0700"
      },
      "message": "Address review comments for aog/411660\n\nAdded test for bulk adding method apis.\n\nTest: test-art-host\n\nChange-Id: Ib5b8c73e572110bccbbab031c11f030c23545fba\n"
    },
    {
      "commit": "73321bfdd7e96e3ce62042c9e5be567ed0db1985",
      "tree": "80c56cc813b3591490bad8a70412ddb904fa4e03",
      "parents": [
        "86060f93c3426284190661440be3bb23f3d029fe",
        "2722f380d6430be83a1c899a94999690a8ab26df"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jun 09 17:50:40 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 09 17:50:42 2017 +0000"
      },
      "message": "Merge \"ART: Fix old warnings\""
    },
    {
      "commit": "2722f380d6430be83a1c899a94999690a8ab26df",
      "tree": "1ce8a54c47aefbb35a4cb18c3d3bbedcbfac9734",
      "parents": [
        "d632b8b8a031cda163c6f9a6b4e33a192f123a0b"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Jun 08 18:03:25 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jun 09 08:45:13 2017 -0700"
      },
      "message": "ART: Fix old warnings\n\nFix Wundefined-var-template warnings.\n\nPartially reverts commit df53be273509dd43725870fb20a2c7d71f7fbfd3.\n\nBug: 28149048\nBug: 29823425\nTest: m\nTest: m test-art-host\nChange-Id: Ib077312558f9e2f784859861c000fbac8375b3f5\n"
    },
    {
      "commit": "f45d61c0866461c9476f17644b27dc0664d507c5",
      "tree": "95d2837a03d451cccd82cad61924980beb5fd0d4",
      "parents": [
        "83b140474aa1759739c8ee4464bf226c4fa0f6d7"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 07 10:29:33 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Jun 08 17:19:51 2017 -0700"
      },
      "message": "ART: Fix or disable some tidy warnings.\n\nAdd a strlcpy shim for the host, so we can use strlcpy instead of\nstrcpy everywhere.\n\nFixed warnings include unused-decls, (some) unreachable code, use\nafter std::move, string char append, leaks, (some) excessive padding.\n\nDisable some warnings we cannot or do not want to avoid.\n\nBug: 32619234\nTest: m\nTest: m test-art-host\nChange-Id: Ie191985eebb160d94b988b41735d4f0a1fa1b54e\n"
    },
    {
      "commit": "3e00363204f489e1deae6bb02f6d1598eefca197",
      "tree": "9e60d852f371f4035eeb62d90d9923bf87adc29c",
      "parents": [
        "73dd3a2ce6c2f54f25169971447c1dd9ccf543a4"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 05 15:06:16 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 05 15:06:16 2017 -0700"
      },
      "message": "ART: Increase stack overflow guard for x86 sanitization\n\nThere\u0027s another increase necessary for 32-bit x86.\n\nBug: 31098551\nTest: m SANITIZE_HOST\u003daddress test-art-host\nChange-Id: I35e665e499f90fb3ba0afc5f61cc1a3edac91a39\n"
    },
    {
      "commit": "0bb4031b976aeb2bad88db81115fea46b19878f0",
      "tree": "7762ab7eef86e27d8205866342357409cbb5341a",
      "parents": [
        "1656ca9e6996cb555b4463e5efd4bd7e3f4fb816"
      ],
      "author": {
        "name": "Bharadwaj Kalandhabhatta",
        "email": "bharadwajsk@google.com",
        "time": "Thu Jun 01 10:47:00 2017 -0700"
      },
      "committer": {
        "name": "Bharadwaj Kalandhabhatta",
        "email": "bharadwajsk@google.com",
        "time": "Fri Jun 02 10:26:56 2017 -0700"
      },
      "message": "Added DexFileAsanRegistrar and necessary additions\n\nThis class was made so that sections of dex files\ncan be easily poisoned to check accesses to those sections.\n\nIn order to enable logging of reads to poisoned sections,\nuse art/tools/add_package_property.sh along with package\nname on the device and art/tools/asan.sh.\n\nBug: 37754950\nTest: export ART_DEX_FILE_ACCESS_TRACKING\u003dtrue ; mm -j \u0026\u0026 mm -j\nSANITIZE_TARGET\u003daddress SANITIZE_LITE\u003dtrue test-art-host;\n\n(cherry picked from commit ecfa103caf2ccead029bd0e1bfcee02601a0c212)\n\nChange-Id: Ie57aa935b7f5f6854ba53d7740cc0d1547b40847\n"
    },
    {
      "commit": "655c6fd9fd37f26cb07d13b11003fd5690eaf471",
      "tree": "bd30f898ece4e7cbe8dad6553cbe37fb2c25be6d",
      "parents": [
        "8144b1ebea42feaa798419eaf53a6bbbf37822a9"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed May 24 21:42:10 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed May 31 14:46:14 2017 -0700"
      },
      "message": "ART: Increase stack overflow guard for sanitization\n\nIncrease the stack overflow guard page size under address sanitization.\nThe C++ frames are larger, so more space is necessary to create an\nexception.\n\nAdjustments in this CL are restricted to the host.\n\nThis CL adjusts the frames up so that most tests pass. Other issues will\nbe addressed in follow-up changes.\n\nBug: 31098551\nTest: m SANITIZE_HOST\u003daddress test-art-host\nChange-Id: I9490eeaa10c1a25486302fc43f8f8212210a59ec\n"
    },
    {
      "commit": "d00e02b7614e8edc2e1fd8426ec249747881ccee",
      "tree": "eefbab768f128bdde43d2396f02e3e1fcf2039d3",
      "parents": [
        "0a5ace58e973da278049f837bf2cdbaf7b44849c"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed May 24 12:04:13 2017 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Sun May 28 17:59:07 2017 -0700"
      },
      "message": "Fix dexlayout fixed point test\n\nPreviously, the dex location did not match the one in the profile.\nThis caused the second dexlayout to not match the checksum and not\nuse the profile.\n\nAlso added a generic function to generate a profile based on an input\ndex.\n\nTest: test-art-host\n\nBug: 62040831\n\nChange-Id: I2b4fb383ec7a46b158f763de13ecbcd8a8c6180d\n"
    }
  ],
  "next": "90eb05c4f383d26b8ef1c957409d3ed7da62f9c8"
}
