)]}'
{
  "log": [
    {
      "commit": "f9ba5210f501b7fe05bb460e7954a0d4c6dcd70d",
      "tree": "26ad331864d20f94da40df486824b5b6cacd370c",
      "parents": [
        "40510ab49d6bb2bc65957aa72c00fbb371647f2d"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Oct 02 15:56:08 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Oct 03 14:06:03 2019 +0000"
      },
      "message": "testrunner: Kill whole process group on timeout.\n\nThis avoids occasional deadlocks of the python script.\n\nIt seems that proc.communicate will not return until all children exit\n(possibly because it is waiting for end-of-file from the shared PIPE).\n\nBug: 140933800\nBug: 141227454\nTest: test.py -b -r --gcstress --jit --host --64\nChange-Id: Ie230ab100a092a920bdbcb1c3bb50e493572562a\n"
    },
    {
      "commit": "40510ab49d6bb2bc65957aa72c00fbb371647f2d",
      "tree": "b899547d3da4ebcaa7aee59d0e7d837e18e095ed",
      "parents": [
        "00b8d451a1a93c070ffe71727a8366f12dc421a2"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Oct 02 20:03:32 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Oct 03 10:28:24 2019 +0000"
      },
      "message": "Adjust Checker assertion in 1004-checker-volatile-ref-load for heap poisoning.\n\nThe relative offset passed to the ADR instruction is usually\n(i.e. when heap poisoning is disabled) 0xc (12 bytes), but it is 0x10\n(16 bytes) when heap poisoning is enabled, as the emitted code\nsequence includes a NEG instruction to unpoison the loaded reference.\n\nTest: art/test/testrunner/testrunner.py --target --64 -t 1004-checker-volatile-ref-load\n      (with `ART_HEAP_POISONING` set to `true`)\nBug: 140507091\nBug: 36141117\n\nChange-Id: I63c6c00abbe10dfcbbf88231f9f9995d3ba950fa\n"
    },
    {
      "commit": "00b8d451a1a93c070ffe71727a8366f12dc421a2",
      "tree": "48780d4b4078df51574568524964125fcfb2f2ee",
      "parents": [
        "f383ed8b60405f09996ac2be480df7b4effb8de0"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Oct 02 15:34:45 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Oct 03 08:28:43 2019 +0000"
      },
      "message": "Remove the leading \u0027/\u0027 in jit zygote memfd/ashmem names.\n\nThis avoids having two \u0027/\u0027 in case the jit zygote code cache\nis using ashmem.\n\nTest: cat /proc/pid/smaps\nChange-Id: Ibff035949c3ff12ab513be75078255b804eef7a5\n"
    },
    {
      "commit": "f383ed8b60405f09996ac2be480df7b4effb8de0",
      "tree": "4e9fec4dd379349fb9d47c5bec9282f69a0016a7",
      "parents": [
        "43fd2936af2f76f2e73765e3deaeefb0d5e39280"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Sep 24 15:02:23 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Oct 02 21:39:34 2019 +0000"
      },
      "message": "Hide static from cc_library_shared and vice versa\n\nThe static properties don\u0027t make sense for cc_library_shared\nmodules, and the shared properties don\u0027t make sense for\ncc_library_static modules.  Move them into separate property\nstructs so they can be added conditionally.\n\nTest: m nothing\nChange-Id: Ic3f95f588a05417dfd470d0e4e9d69c376250a11\n"
    },
    {
      "commit": "43fd2936af2f76f2e73765e3deaeefb0d5e39280",
      "tree": "ca086f1130ca65de8ce9107bb292cd3514f0308d",
      "parents": [
        "a85580ad9bd639e5137c799814405439aa0e757f"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Oct 01 13:34:51 2019 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Oct 02 20:04:55 2019 +0000"
      },
      "message": "Update run-libjdwp-tests.sh to run more of the test suite\n\nAlso add new broken tests to the failure list.\n\nTest: ./art/tools/run-libjdwp-tests.sh --mode\u003dhost\nChange-Id: Id06609ee341107be1c16a45ec736d8cee80be9f6\n"
    },
    {
      "commit": "a85580ad9bd639e5137c799814405439aa0e757f",
      "tree": "e3a8fff47c7e138fa8fada220b16f4e626ab615e",
      "parents": [
        "f3a1a29d08b2ad73a378ef31261c6238dd1def61"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Sep 27 13:24:33 2019 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Oct 02 18:16:12 2019 +0000"
      },
      "message": "Remove aggegation counter handling from profman\n\nThe profile no longer support aggregation counters and this has no effect.\n\nBug: 139884006\nTest: m\nChange-Id: Iacadb08611e7dbce9a0d60eff92f44faaa9a3afc\n"
    },
    {
      "commit": "f3a1a29d08b2ad73a378ef31261c6238dd1def61",
      "tree": "44ca9765d27bd1016d539d8ac6371c0f95e8af29",
      "parents": [
        "6a98c95feba069dcb66dcdb89d138460a01487f3"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Sep 26 20:44:16 2019 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Oct 02 18:16:12 2019 +0000"
      },
      "message": "Annotate boot profiles with the origin package names\n\nWhen profiling the boot image the samples are not annotated with the\npackage name that generating them.\n\nBug: 139884006\nTest: m test-art-host-gtest\nChange-Id: Ie90765eea0b930660081d4e8a4ea2cda09f72524\n"
    },
    {
      "commit": "6a98c95feba069dcb66dcdb89d138460a01487f3",
      "tree": "b55fe260ce7816fb691a767a5fdae69535438ae1",
      "parents": [
        "86bf2fe254f2e2b3511a9c6293c4cd3a238e465e"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Sep 26 20:21:21 2019 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Oct 02 18:16:12 2019 +0000"
      },
      "message": "Introduce the ability to annotate profile samples\n\nWe can now annotate profiles samples (classes or methods) with additional\nmetadata that will be persisted in the offline representation. Currently\nthe annotations support the package name that contributed the given\nsamples.\n\nWhen samples are annotated, they are grouped into distinct categories\nindexed by (dex_file, sample_annotation). This is achieved by extending\nthe profile key to include a serialized representation of the annotation.\n\nBecause they create independent groups in the profile, the annotations can\npotentially increase the profile size considerably so care should be taken\nwhen adding them in big numbers.\n\nInformation extraction (methods and classes) has also been extended to\nsupport the annotations. Users may choose to extract the info for\na particular group (dex_file, sample_annotation) or, as before, just for a\nsingle dex file. If the metadata is not given (e.g. when using profile\nguided compilation), the default search mechanism kicks in, and the first\ndex file matching the constraint is searched.\n\nBy extending the key representation, we preserve the previous profile\nbehaviour without the need to extended the underlying format or increase\nthe version.\n\nBug: 139884006\nTest: m test-art-host-gtest\n\nChange-Id: Iaccecd05c575bf0dac6dace6257cdafc6dc4a329\n"
    },
    {
      "commit": "86bf2fe254f2e2b3511a9c6293c4cd3a238e465e",
      "tree": "297b840e8d27b31417cb109625678642bfd77775",
      "parents": [
        "d5fe17eac91c5c0cefb2ab8093f41ddc68c2f724"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Sep 27 15:54:42 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Oct 02 12:40:06 2019 +0000"
      },
      "message": "Remove too agressive DCHECK.\n\nBoot classpath does contain soft failures, eg:\ncom.android.framework.protobuf.UnsafeUtil$JvmMemoryAccessor\n\nBug: 141606408\nTest: libartd boots\nChange-Id: Ife657a295560420fd69d14bc11c85720e250f4aa\n"
    },
    {
      "commit": "d5fe17eac91c5c0cefb2ab8093f41ddc68c2f724",
      "tree": "f3299a8fe9ff637545d8e97461d84f6294baa5b2",
      "parents": [
        "bd5690db112e7357bfa7634abbda9762e20959d7"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Tue Oct 01 16:18:47 2019 -0700"
      },
      "committer": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Tue Oct 01 16:18:47 2019 -0700"
      },
      "message": "Fix incorrect narrowing type cast\n\nstd::string::npos is greater than the maximum value of uint32_t type,\nthe narrowing cast will make this statement always false.\n\nFound by Clang tautological-constant-out-of-range-compare warning.\n\nTest: N/A\nBug: 72331526\nChange-Id: I59b297360ab5672868f2cffc42ec02189275a152\n"
    },
    {
      "commit": "bd5690db112e7357bfa7634abbda9762e20959d7",
      "tree": "e124a7758df578f8d61934126fec0720a2f4b0e5",
      "parents": [
        "627d8d3d532f00ae7b6145887b39f9cf0a14b148"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Sep 30 15:39:15 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 01 21:34:05 2019 +0000"
      },
      "message": "Make run-jdwp-tests.sh warn about deprecation\n\nSince the internal jdwp implementation is deprecated when running the\nJDWP test suite one should generally use ./tools/run-libjdwp-tests.sh\ninstead of ./tools/run-jdwp-tests.sh. This makes run-jdwp-tests.sh\nrequire a special flag to run if not invoked through\nrun-libjdwp-tests.sh or by LUCI. This should help ensure people run\nthe appropriate tests.\n\nTest: ./art/tools/run-jdwp-tests.sh --mode\u003dhost\nTest: ./art/tools/run-jdwp-tests.sh --mode\u003dhost --force-run-test\nTest: ./art/tools/run-libjdwp-tests.sh --mode\u003dhost\nChange-Id: Id31fddafe6112656945e544c0dba7a9629deb247\n"
    },
    {
      "commit": "627d8d3d532f00ae7b6145887b39f9cf0a14b148",
      "tree": "707e4fb9852e62d370c3f57bb54633764123bf08",
      "parents": [
        "4090657e44b16dcac5cb63c2151a2eee9472d968"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Sep 30 16:46:18 2019 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 01 20:42:21 2019 +0000"
      },
      "message": "Move bionic (\"runtime\") apex definition out of art/.\n\nBug: http://b/139176024\nTest: boots\nChange-Id: I0cb50dc10c3cd6c445e358dab7bcd12cab5f5b88\n"
    },
    {
      "commit": "4090657e44b16dcac5cb63c2151a2eee9472d968",
      "tree": "de386c9da5521f7e3b011df860fad9e43252721d",
      "parents": [
        "19cb8e2bcc1a26f23a9709daf96ad7ead96d05a7"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Sep 30 13:57:11 2019 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Oct 01 19:43:05 2019 +0000"
      },
      "message": "Deoptimize boot image when profiling boot class path\n\nUsed for getting JIT samples for boot image methods.\n\nTest: adb shell profman --dump-classes-and-methods --profile-file\u003d/data/misc/profiles/cur/0/android/primary.prof --apk\u003d/apex/com.android.art/javalib/core-oj.jar\nBug: 139883463\n\nChange-Id: Ib22b4539a24c7e57be8ac3e974e6681e754b06ff\n"
    },
    {
      "commit": "19cb8e2bcc1a26f23a9709daf96ad7ead96d05a7",
      "tree": "3e30d7f62a88042fe8575f1af3a67f902a4dc70a",
      "parents": [
        "30677103d4d4dfb2695f1d9c5a3a41ae64a66ec7"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Oct 01 10:48:37 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Oct 01 16:04:25 2019 +0000"
      },
      "message": "Lower the check to class is initialized.\n\nKnowing if the class is visibly initialized is only for JIT/AOT compiled\ncode to avoid the memory barrier. For callers of `NeedsInitializationCheck`\nit\u0027s enough to just check whether the class is initialized.\n\nTest: test.py, 626-set-resolved-string\nChange-Id: I2b01e03139e70cdeb73e09a01519f8d096c09440\n"
    },
    {
      "commit": "30677103d4d4dfb2695f1d9c5a3a41ae64a66ec7",
      "tree": "bbd39e10afcb39210f1786752f0066cda4320f2c",
      "parents": [
        "de05550bf33d3441655cfddd66e788791f2412e7"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Oct 01 12:54:10 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 01 13:49:48 2019 +0000"
      },
      "message": "Raise timeout for method tracing to 30 mins.\n\nTest: Presubmits\nBug: 141742445\nChange-Id: I60199fbaf21d2203f051b3a0c1d08a778d029d29\n"
    },
    {
      "commit": "de05550bf33d3441655cfddd66e788791f2412e7",
      "tree": "6815d4af1a0a825df90318f753dc3afa71704ece",
      "parents": [
        "988c3911671598d7c840c65bf1cdfafa1e05c582"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Aug 02 13:41:35 2019 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Oct 01 13:05:17 2019 +0000"
      },
      "message": "Use ClassStatus::kVisiblyInitialized in reflection.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: aosp_taimen-userdebug boots.\nTest: run-gtests.sh\nTest: testrunner.py --target --optimizing\nBug: 36692143\nChange-Id: I53342f5bb6285c9ca95445791dd10e04c6d8f962\n"
    },
    {
      "commit": "988c3911671598d7c840c65bf1cdfafa1e05c582",
      "tree": "2ee476b2dbd75fa9c36cfdb28dbcede539eac195",
      "parents": [
        "4bbc62ba98a74885dcc7fd21b468808774db5a8b"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Sep 25 19:33:35 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Oct 01 12:20:13 2019 +0000"
      },
      "message": "Fix null checks on volatile reference field loads on ARM64.\n\nART\u0027s compiler adds a null check HIR instruction before each field\nload HIR instruction created in the instruction builder phase. When\nimplicit null checks are allowed, the compiler elides the null check\nif it can be turned into an implicit one (i.e. if the offset is within\na system page range).\n\nOn ARM64, the Baker read barrier thunk built for field reference loads\nneeds to check the lock word of the holder of the field, and thus\nincludes an explicit null check if no null check has been done before.\nHowever, this was not done for volatile loads (implemented with a\nload-acquire instruction on ARM64). This change adds this missing null\ncheck.\n\nTest: art/test/testrunner/testrunner.py --target --64 -t 1004-checker-volatile-ref-load\nBug: 140507091\nBug: 36141117\nChange-Id: Ie94f2e73d2f439ae4460549d7b71848401602a21\n"
    },
    {
      "commit": "4bbc62ba98a74885dcc7fd21b468808774db5a8b",
      "tree": "5ac2c99cdd17672b22508ebc35a7e3a2c2016c0b",
      "parents": [
        "fd64e56b9f980423b65dd9ce76a16338a7240104"
      ],
      "author": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Wed Sep 25 12:13:35 2019 +0100"
      },
      "committer": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Tue Oct 01 09:45:30 2019 +0000"
      },
      "message": "Only write to data-sources targeting the process.\n\nBug: 136210868\n\nTest: art/tools/run-gtests.sh -j4\nFailed test: /apex/com.android.art/bin/art/arm/instruction_set_features_test\nKnown issue, see http://b/139425971\n\nTest: art/test/testrunner/testrunner.py --target --64\nConcurrency: 7\n4140/4305 (96%) tests passed.\n\nTest: art/tools/run-libcore-tests.sh --mode\u003ddevice --variant\u003dX64\nOutcomes: 13781. Passed: 13542, Failed: 0, Skipped: 140, Warnings: 99. Took 28m28s.\n\nTest: art/tools/run-jdwp-tests.sh --mode\u003ddevice --variant\u003dX64\nOutcomes: 401. All successful. Took 7m1s.\n\nChange-Id: I31fb02141630118fc8a039af9d7827dca340a527\n"
    },
    {
      "commit": "fd64e56b9f980423b65dd9ce76a16338a7240104",
      "tree": "7acf39a06ae360ab67175e54dd7bc067049e9267",
      "parents": [
        "46123bc8253048c90dd9311ea78cbe628082b649"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Sep 25 17:58:26 2019 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Sep 30 16:15:27 2019 +0000"
      },
      "message": "Move to bionic platform include.\n\nBug: 141560639\n\nTest: Builds.\nChange-Id: Iae00fc17c05f46d7c7128850d8e122925ef42777\nMerged-In: Iae00fc17c05f46d7c7128850d8e122925ef42777\n(cherry picked from commit d96352d019b8400cb1f9c57342d008afadf4a877)\n"
    },
    {
      "commit": "46123bc8253048c90dd9311ea78cbe628082b649",
      "tree": "bddb395ca052d3fd16b87f0871d801011f51a6be",
      "parents": [
        "7e97cf1015fd2b294ce08b416ac414a99c3ddd36"
      ],
      "author": {
        "name": "easoncylee",
        "email": "easoncylee@google.com",
        "time": "Mon Sep 30 17:22:22 2019 +0800"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Sep 30 15:50:23 2019 +0000"
      },
      "message": "Prune class2greylisttest out of general-tests.\n\nThese tests define test_suite as \u0027general-tests\u0027 only but not used in\nTest Mapping Suite. Hence, we plan to prune them to reduce size/build\ntime of general-tests.zip. They are listed as below:\n - class2greylisttest\n\nBug: 139893779\n\nTest: m general-tests\nChange-Id: I1755c5201d944debb45eb02beb921ab5bdcc02ea\n"
    },
    {
      "commit": "7e97cf1015fd2b294ce08b416ac414a99c3ddd36",
      "tree": "28f452db8f4c0a03983e3df2877ae54debb2a53f",
      "parents": [
        "bf0e3d21b596727983dda347296e88f42456dd41"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Sep 30 14:41:37 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Sep 30 14:56:33 2019 +0100"
      },
      "message": "Add 10 minutes for gcstress timeout.\n\nAt least two tests already need it (129-ThreadGetId and\n09-array-copy-concurrent-gc), so increasing it globally.\n\nTest: test.py\nChange-Id: Icce33eacd19dcc696253b3ad0daba1912fd428b2\n"
    },
    {
      "commit": "bf0e3d21b596727983dda347296e88f42456dd41",
      "tree": "a1d54e70e214f27a867cc046f8098e633ce4632d",
      "parents": [
        "cb497cf42679006e66a90d9205b98fd2ac00203a"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Sep 30 12:13:41 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Sep 30 13:10:27 2019 +0000"
      },
      "message": "ART chroot: Handle new linker logic for ld config file.\n\nTest: test.py\nChange-Id: I2a8b8e795f7bf1548fbab0b99926fa4878456aa2\n"
    },
    {
      "commit": "cb497cf42679006e66a90d9205b98fd2ac00203a",
      "tree": "ffb7890201ab42a03303d9a2ce5ee0a0e2433b74",
      "parents": [
        "82e61e9d1f3b8c3ee2d7c8f0838a6b988ba65d0b"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Sep 27 18:42:55 2019 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Sep 30 12:37:12 2019 +0100"
      },
      "message": "Raise timeout when method tracing is enabled.\n\n530-checker-lse2 goes from ~10 secs to 4+ mins on host with tracing enabled,\nand causes frequent timeouts on art-tracing on master-art-host.\n\nTest: art/test/run-test --always-clean --dex2oat-jobs 4 --host \\\n  --prebuild --compact-dex-level fast --optimizing --no-relocate \\\n  --runtime-option -Xcheck:jni --dev --trace --64 530-checker-lse2\n  (check 1200s to timeout command)\nTest: art/test/run-test --always-clean --dex2oat-jobs 4 --host \\\n  --prebuild --compact-dex-level fast --optimizing --no-relocate \\\n  --runtime-option -Xcheck:jni --dev --64 530-checker-lse2\n  (check 600s to timeout command)\nBug: 141742445\nChange-Id: I0dc3063b42e8602f4ec30f17c01576aae2f028e7\n"
    },
    {
      "commit": "82e61e9d1f3b8c3ee2d7c8f0838a6b988ba65d0b",
      "tree": "3671c1c6e6d324c7e66e126a91069c546af1966f",
      "parents": [
        "44f406c7893efe092900ca1db7345695837221a4"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Sep 30 02:43:18 2019 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Sep 30 03:53:59 2019 +0100"
      },
      "message": "Revert switch to bc to do fractional calculation.\n\nThis partially reverts commit 44f406c7893efe092900ca1db7345695837221a4.\n\nReason for revert: bc isn\u0027t available on buildbots.\n\nBug: 141742445\nTest: art/test/testrunner/testrunner.py --target --64 --optimizing -t 670\nChange-Id: I961dcaeb9b0cac43e254d9b3f70aaa16f97c1670\n"
    },
    {
      "commit": "44f406c7893efe092900ca1db7345695837221a4",
      "tree": "83c63d27c580b8974b85e745a6aac50060a0d434",
      "parents": [
        "c18eba327c4e207ff7b38817f097ee2220b44b39"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Sep 27 15:14:43 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Sep 28 18:00:34 2019 +0000"
      },
      "message": "Raise the timeout for 670-bitstring-type-check.\n\nAlso make run-test-jar support fractional time multipliers.\n\nTest: art/test/testrunner/testrunner.py --target --64 --optimizing -t 670\nTest: art/test/testrunner/testrunner.py --target --64 --optimizing -t 670\n  with DEV_MODE enabled to check the timeout argument\nTest: art/test/testrunner/testrunner.py --target --64 --optimizing -t 670\n  with ART_TIME_OUT_MULTIPLIER\u003d1.3465323455433 to ensure fractional digits work\nBug: 141742445\nChange-Id: Ief56884a27b3090fbead05df78fc09712823cd61\n"
    },
    {
      "commit": "c18eba327c4e207ff7b38817f097ee2220b44b39",
      "tree": "1978e64abd3e9fd3df99179f4a2110a724a9565f",
      "parents": [
        "371390f775c90b8b3df11a9890585598a2a39da9"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Sep 24 14:36:27 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Sep 27 17:08:33 2019 +0000"
      },
      "message": "Consolidate updating of reflective Field/Method references\n\nPreviously we used several different visitors to update Field \u0026\nMethod references for structural redefinition. We also did not visit\nor update JVMTI based references.\n\nThis consolidates all the visitors to a single\nRuntime::VisitReflectiveTargets function with a single\nReflectiveTargetVisitor type. This simplifies the code around\nstructural redefinition and ensures that the reflective value holders\nare in charge of the actual replacement.\n\nSupport was also added for walking internal openjdkjvmti references\nfor things like field-read/modification events.\n\nTest: ./test.py --host\nBug: 134162467\n\nChange-Id: Ic5fc1db7db0a30f947a1a67259dc024e149ebd57\n"
    },
    {
      "commit": "371390f775c90b8b3df11a9890585598a2a39da9",
      "tree": "d73786851dea3dcd1277b6135c3c41c578fbeef5",
      "parents": [
        "954b3adf6b3b4c0efe46ce4e95228fbd386d2c53"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Sep 27 09:57:38 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Sep 27 12:42:27 2019 +0000"
      },
      "message": "Call NativeDebugInfoPostFork in the child post-fork.\n\nIt only applies to children, and must be called before threads resume.\n\nTest: ./art/test/run-test --host --jit --gdb --runtime-option -Xjitthreshold:0 689-zygote-jit-deopt\nChange-Id: I20a82b55316e4343948a54c17289049f587c354e\n"
    },
    {
      "commit": "954b3adf6b3b4c0efe46ce4e95228fbd386d2c53",
      "tree": "8a0ff686c8bc880897b15a8e72419ad0a06aec6f",
      "parents": [
        "b55ef65e55dd4d01a9bdf315c09c090b73f7c19a"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Sep 26 12:28:54 2019 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Sep 27 01:05:16 2019 +0000"
      },
      "message": "Removed an used method from profile compilation info\n\nBug: 139884006\nTest: m\nChange-Id: I0e9b09e2ba8e201a2034699b9463eed03e5db8c4\n"
    },
    {
      "commit": "b55ef65e55dd4d01a9bdf315c09c090b73f7c19a",
      "tree": "04b9723f47ab2570a4eb825b0377c731216ea2c6",
      "parents": [
        "b096c918a5f20abb3426f1693435e230f2e07445"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Sep 26 15:23:28 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Sep 27 00:50:16 2019 +0000"
      },
      "message": "Improve VLOG_STREAM\n\nPreviously VLOG_STREAM would always print even if the module was\nturned off. This changes VLOG_STREAM to not print when the module is\noff. Like with LOG_STREAM the stream is consumed even if it\u0027s not\nprinted.\n\nAlso updated some ti_heap.cc logs to use LOG_STREAM.\n\nTest: ./test/run-test --host --dev 1981\nTest: ./test/run-test --host --dev --runtime-option -verbose:plugin 1981\nTest: ./test.py --host\nChange-Id: If709474918b3e67749647fae5accb0ce98ea3a59\n"
    },
    {
      "commit": "b096c918a5f20abb3426f1693435e230f2e07445",
      "tree": "1ce0b393c1d3d7aefea028c38afcf8b91e24b264",
      "parents": [
        "193efa454148afb105567676ef82d1b6844e8f9e"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Sep 25 13:33:06 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Sep 26 19:44:22 2019 +0000"
      },
      "message": "Correctly perform read-barriers on cross-thread reg access\n\nFor debug workloads we will sometimes read stack registers on other\nthreads. This generally only happens when the target thread is\nsuspended due to a running GC and the debugger thread tries to access\nstack registers from a compiled method. This could lead to a missed\nread-barrier and a From-Space reference being returned. To fix this we\nmanually perform a read-barrier after pulling the reference out of the\ncompiled stack.\n\nTest: ./test.py --host\nTest: ./art/tools/run-libjdwp-tests.sh --mode\u003dhost\nTest: ./test.py --host --all-compiler --all-gc -t 1966\nBug: 141590021\n\nChange-Id: I5540c03bfdaecddbc1329ff6c7c58c6f18d6a090\n"
    },
    {
      "commit": "193efa454148afb105567676ef82d1b6844e8f9e",
      "tree": "5faa4aecff18bc53646ff39cf17a07de4e4550fc",
      "parents": [
        "07019298f72fda828ab7a48b86babf02f474ae5f"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Wed Sep 25 10:35:47 2019 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Sep 26 18:48:49 2019 +0000"
      },
      "message": "Disable leak detection locally.\n\nBefore it was disabled globally.\n\nBug: 141622862\nTest: build w/ ASAN on host\nChange-Id: I779d604c66ddce72ec8d939430373896be83f193\n"
    },
    {
      "commit": "07019298f72fda828ab7a48b86babf02f474ae5f",
      "tree": "40eb3f5aba77b85082d10e38b9ccfda740806e49",
      "parents": [
        "621afb45075e2fee1024d34d8c6fc0df828dc4a6"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Sep 25 18:25:18 2019 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Sep 26 18:26:33 2019 +0000"
      },
      "message": "Add method flag bits for 32/64 bit execution in the profile\n\nStore the method bitness in the method flags for the boot image profile.\nThis may help create different profiles for 32 and 64 bits.\n\nBug: 139884006\nTest: m test-art-host-gte\nChange-Id: I5227711d72f63a91c3044fb6356365f785057143\n"
    },
    {
      "commit": "621afb45075e2fee1024d34d8c6fc0df828dc4a6",
      "tree": "404ed4c98c2130b1d8761511f38d3f4b830ddfd1",
      "parents": [
        "4815e7209ef2558c861036b05a3082d32909b236"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Sep 23 22:01:36 2019 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Sep 26 14:24:43 2019 +0000"
      },
      "message": "Avoid linking libdexfile_support into static executables.\n\nIt doesn\u0027t define -DSTATIC_LIB, so it ends up compiling in dlopen() calls\nthat don\u0027t work in static executables. Use libdexfile_support_static\ninstead, which is intended for this use. That also requires adding a\ncorresponding libdexfiled_support_static.\n\nThis also fixes d/non-d library mixup because libdexfile_{external,support}\nwhich depend on non-d libs were used in libartd_static_defaults.\n\nTest: Build \u0026 boot\nTest: art/test/run-test --chroot /data/local/art-test-chroot --jit --64 --timeout 5 151-OpenFileLimit\n  and check that logcat has signal_dumper output without any fatal error\nBug: 141485154\nChange-Id: I8005373814d73ceefc2891a77204d4ba89abb922\n"
    },
    {
      "commit": "4815e7209ef2558c861036b05a3082d32909b236",
      "tree": "0809482592566e336b5d9ab8c8f5d90ba42dc37f",
      "parents": [
        "f84ef3192bcc167c627e8e13a48b112f017821c2"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Sep 24 16:20:09 2019 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Sep 26 14:24:43 2019 +0000"
      },
      "message": "Propagate timeout to run-test-jar.\n\nBug: 141485154\nTest: art/test/run-test --chroot /data/local/art-test-chroot --jit --64 --timeout 5 151-OpenFileLimit (timeout failure)\nTest: art/test/run-test --chroot /data/local/art-test-chroot --jit --64 151-OpenFileLimit (success)\nChange-Id: I741e2ae485e4f5769d6e0dfa44f4986d901d7d3b\n"
    },
    {
      "commit": "f84ef3192bcc167c627e8e13a48b112f017821c2",
      "tree": "12384b891140205768689bde6e3dfd43f734f529",
      "parents": [
        "d0d215acfcdc1cdab12ce7cd1e261f5b5f3aa1bd"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Sep 24 19:30:44 2019 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Sep 26 00:35:55 2019 +0000"
      },
      "message": "Implement \u003c\u003c operator for ProfileCompilationInfo::DexRefence\n\nIt avoids the need to use inner fields in the inliner.\n\nBug: 139884006\nTest: m test-art-host-gtest\nChange-Id: I3b2276094829a0e431dc145bf1ff13cbfa746742\n"
    },
    {
      "commit": "d0d215acfcdc1cdab12ce7cd1e261f5b5f3aa1bd",
      "tree": "ea58ecbf29bf0676ffd42c1817c0665bffbb81bd",
      "parents": [
        "4f9c6cf8e321226de434d006c94b3e2c2cf129fc"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Sep 24 19:08:30 2019 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Sep 26 00:35:55 2019 +0000"
      },
      "message": "Fix documentation and some style issues in the profile\n\nBug: 139884006\nTest: m test-art-host-gtest\nChange-Id: I57a42e6f0503cde12c24fb954be0fc94c4ea2eb1\n"
    },
    {
      "commit": "4f9c6cf8e321226de434d006c94b3e2c2cf129fc",
      "tree": "33edeca2d6ae2f4af897be9bbf89a59fe356950d",
      "parents": [
        "4ad95214341f03d11f06e82fd92ac22b3605586d"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Sep 24 17:55:25 2019 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Sep 26 00:35:55 2019 +0000"
      },
      "message": "Remove an unused profile method\n\nBug: 139884006\nTest: m test-art-host\nChange-Id: I21cf0de4e5cc806f313003b6200ccddca083d552\n"
    },
    {
      "commit": "4ad95214341f03d11f06e82fd92ac22b3605586d",
      "tree": "3dde60deb636cb33f4c59bb26d9f9b516d908ad0",
      "parents": [
        "45cdd05e32bdff1cea8581bc9ecf8a8cb08d6f5b"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Sep 23 23:39:41 2019 -0400"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Sep 26 00:35:55 2019 +0000"
      },
      "message": "Make explicit which methods retrieve info about *hot* methods\n\nRename some methods to better highlight that they refer to hot methods and not\nto any method (e.g. a non-hot, startup methods).\n\nBug: 139884006\nTest: m test-art-host\n\nChange-Id: Ieb3a36c434104d1cde28ca18a5b335cc8a24e537\n"
    },
    {
      "commit": "45cdd05e32bdff1cea8581bc9ecf8a8cb08d6f5b",
      "tree": "e8a5281625659dc9ac4c96ce03687a75ca58a9d9",
      "parents": [
        "1061c7d2bf7a559abe5a234c680b27b8838862ca"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Sep 23 23:03:18 2019 -0400"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Sep 26 00:35:55 2019 +0000"
      },
      "message": "Clean up profile AddClass APIs\n\nRemove AddClassIndex APIs which were only used in tests (or test profile generation).\nThis was the last API which exposed the profile key internals.\n\nBug: 139884006\nTest: m test-art-host\nChange-Id: Iea41b85484c7f1ec33eaad75cd18c65adcb7853e\n"
    },
    {
      "commit": "1061c7d2bf7a559abe5a234c680b27b8838862ca",
      "tree": "b9e299414fbdb05f9763a71fe46b9078449eaac6",
      "parents": [
        "8b959958d1df3545957ddbce2be2ea21003a121c"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Sep 23 21:00:29 2019 -0400"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Sep 26 00:35:55 2019 +0000"
      },
      "message": "Clean up profile AddMethod APIs\n\nRestructure the profile assistant test to use the same APIs as profile\nsaver and\nclean up all the other usages for AddMethodIndex and AddMethod.\n\nBug: 139884006\nTest: m test-art-host\n\nChange-Id: Icf76d6aa05f0f9dcc589182196ca34a0298f2cb7\n"
    },
    {
      "commit": "8b959958d1df3545957ddbce2be2ea21003a121c",
      "tree": "bbb4a420a4adeb5f4a49f69d78856055a95c3f49",
      "parents": [
        "7acb8464b04ab196159adbf96358b81de3017fea"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Sep 20 16:32:05 2019 -0400"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Sep 26 00:35:55 2019 +0000"
      },
      "message": "Restructure the profile compilation info tests\n\nRestructure the test to manipulate the profile using the same methods as\nthe profile saver (rather than using index based addition).\n\nThis will help with cleaning up the profile interface in preparation for a\nnew format.\n\nTo support the restructuring new classes were added to help create and\nmanage fake dex files which only have the location, checksum and number of\nmethods set.\n\nBug: 139884006\nTest: m test-art-host\nChange-Id: I9bf86b2244c01ffa9422df0fd5ee23a2a7ff8593\n"
    },
    {
      "commit": "7acb8464b04ab196159adbf96358b81de3017fea",
      "tree": "b2acd4ad7cdf455a8c720349c59127c07ece2047",
      "parents": [
        "5a0b6726562948421fbbeb38d20ffd66ef688ff8"
      ],
      "author": {
        "name": "Artur Satayev",
        "email": "satayev@google.com",
        "time": "Wed Sep 11 12:16:12 2019 +0100"
      },
      "committer": {
        "name": "satayev",
        "email": "satayev@google.com",
        "time": "Wed Sep 25 19:10:02 2019 +0000"
      },
      "message": "Allow excluding API list values via command line arguments.\n\nThis replaces --only-report-sdk-uses as well. Note only ApiList::Value and not DomainApi are supported for now.\n\nTest: manual\nChange-Id: I7734eae1ebb0f922eb4652d29f1e1e4dce18cbec\n"
    },
    {
      "commit": "5a0b6726562948421fbbeb38d20ffd66ef688ff8",
      "tree": "9507db95b78ba55228fc24dc43f485a9755b9773",
      "parents": [
        "a6c9b78a3f2c7a7f39761427dcd32e0bf6c546f3"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Sep 24 15:09:40 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Sep 25 16:02:56 2019 +0000"
      },
      "message": "Boot image: only use the resolution stub when there is AOT code.\n\nThis avoids dirtying the page when the class becomes initialized.\n\nTest: test.py\nBug: 119800099\nChange-Id: I5cd7ae56b6637583179dbb766da251977b7ac961\n"
    },
    {
      "commit": "a6c9b78a3f2c7a7f39761427dcd32e0bf6c546f3",
      "tree": "59676cd563b71a5bb866681224a9ac9b2d35991a",
      "parents": [
        "38cf1105e340888f075517936679cce1864fd0b4"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Sep 16 18:57:26 2019 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Sep 24 23:22:12 2019 +0000"
      },
      "message": "Consolidate profile methods\n\nRemove unnecessary profile APIs or the ones that were added only for tests.\nThis makes the profile data flow much easier to understand (as we have to follow\nfewer entry points when adding methods and classes). It will also make it easier\nto restructure the profile format with new data.\n\nTest: m test-art-host-gtest\nChange-Id: I09ea91229278877d16b12af7a0b356ccceb4b520\n"
    },
    {
      "commit": "38cf1105e340888f075517936679cce1864fd0b4",
      "tree": "c0a439449fede6dae61ca87194f4d6f43c1bceb0",
      "parents": [
        "e58624f221b967553d7b71f14d8677ceaa000553"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Sep 20 17:34:39 2019 -0400"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Sep 24 23:22:12 2019 +0000"
      },
      "message": "Process method flags uniformly in the profile\n\nWe used to have two main ways to add methods in profiles: one which would\nassume methods are hot and another one where we had to specify the method\nflags explicitly. This created some implicit assumptions when adding new\nmethods that made it hard to follow which methods sets what.\n\nThis CL unify the way flags are processed removing any assumptions of flags.\n\nBug: 139884006\nTest: m test-art-host\n\nChange-Id: Ib1dcfdd4a5220507b89e3e0947252cef4fa2eb4c\n"
    },
    {
      "commit": "e58624f221b967553d7b71f14d8677ceaa000553",
      "tree": "00d6caa5ca66562d9c8e448abc77c0c6018fca0c",
      "parents": [
        "48349ad38887f65da76df268f8e548d508d8c6a1"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Sep 20 15:53:40 2019 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Sep 24 17:40:00 2019 +0000"
      },
      "message": "Various renames following the name change from \"Runtime APEX\" to \"ART APEX\".\n\nIn particular ANDROID_RUNTIME_ROOT is now ANDROID_ART_ROOT.\n\nTest: Build \u0026 boot\nTest: art/tools/run-gtests.sh in chroot\nTest: art/test/testrunner/testrunner.py --target --64 in chroot\nTest: art/tools/run-libcore-tests.sh --mode\u003ddevice --variant\u003dX64 in chroot\nTest: art/tools/run-jdwp-tests.sh --mode\u003ddevice --variant\u003dX64 in chroot\nTest: m test-art-host-gtest\nTest: art/test/testrunner/testrunner.py --host --64\nTest: art/tools/run-jdwp-tests.sh --mode\u003dhost\nBug: 135753770\nChange-Id: Ia74da964e54cf396d66e9e12ea56da4e9483662a\n"
    },
    {
      "commit": "48349ad38887f65da76df268f8e548d508d8c6a1",
      "tree": "0e89e6cde84b2120aaf9ad9d362e61ab8d3b95c2",
      "parents": [
        "1ba7fec112f61342d5fc2b16542fad141fd25bf1"
      ],
      "author": {
        "name": "Neeraj Solanki",
        "email": "neeraj.solanki@intel.com",
        "time": "Mon Aug 05 23:16:56 2019 +0530"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Sep 24 17:16:38 2019 +0000"
      },
      "message": "AVX support for bitwise instructions (Xor, Or, And, Andn)\n\nTest: ./test.py --host --64, test-art-host-gtest\n\nChange-Id: Ia8302d12d3ebb8447d73db576fb5b945485c11e1\nSigned-off-by: Neeraj Solanki \u003cneeraj.solanki@intel.com\u003e\n"
    },
    {
      "commit": "1ba7fec112f61342d5fc2b16542fad141fd25bf1",
      "tree": "885acab8aad1c03ea05f9cfced458962faf4c9d5",
      "parents": [
        "d3ee98a38ff14400f06ceeb7cd22502d1fd4a1aa"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Tue Sep 24 14:59:00 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Sep 24 16:26:37 2019 +0000"
      },
      "message": "unset ART_TEST_ANDROID_I18N_ROOT before starting chroot test\n\nBug: 137009149\nTest: treehugger\nChange-Id: I630f31fc424c6ced36e9564049d8d8b87f66ed19\n"
    },
    {
      "commit": "d3ee98a38ff14400f06ceeb7cd22502d1fd4a1aa",
      "tree": "dd6b9545eb90c9eb0d49310e4819c8782bdc4d5f",
      "parents": [
        "53d220e4ab1fc09921e11cabd8fdba388079f792"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Sep 23 16:26:50 2019 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Sep 23 20:32:33 2019 +0100"
      },
      "message": "Restrict visibility of a static library module.\n\nStatic linking violates the APEX surface, so it shouldn\u0027t be public.\n\nBug: 133140750\nTest: m\nChange-Id: If75e74c24574679aed8c6499f8e70a6419acebbc\n"
    },
    {
      "commit": "53d220e4ab1fc09921e11cabd8fdba388079f792",
      "tree": "6d0f5dc6a509f903e1706996a90792ad5863877d",
      "parents": [
        "d7ea0437a8dd11253b55651fcfab23b65d504ee2"
      ],
      "author": {
        "name": "David Horstmann",
        "email": "david.horstmann@linaro.org",
        "time": "Tue Jul 16 16:00:10 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Sep 23 12:10:12 2019 +0000"
      },
      "message": "ART: Improve VisitStringGetCharsNoCheck intrinsic for compressed strings, using SIMD\n\nThe previous implementation of VisitStringGetCharsNoCheck\ncopies one character at a time for compressed strings (that\nuse 8 bits per char).\n\nInstead, use SIMD instructions to copy 8 chars at once\nwhere possible.\n\nOn a Pixel 3 phone:\n\nMicrobenchmarks for getCharsNoCheck on varying string\nlengths show a speedup of up to 80% (big cores) and\n70% (little cores) on long strings, and around 30% (big)\nand 20% (little) on strings of only 8 characters.\n\nThe overhead for strings of \u003c 8 characters is ~3%,\nand is immediately amortized for strings of more\nthan 8 characters.\n\nDhrystone shows a consistent speedup of around 6% (big)\nand 4% (little).\n\nThe getCharsNoCheck intrinsic is used by the StringBuilder\nappend() method, which is used by the String concatenate\noperator (\u0027+\u0027).\n\nImage size change:\n  Before:\n    boot-core-libart.oat:  549040\n    boot.oat:             3789080\n    boot-framework.oat:  13356576\n  After:\n    boot-core-libart.oat:  549024 (-16B)\n    boot.oat:             3789144 (+64B)\n    boot-framework.oat:  13356576 (+ 0B)\n\nTest: test_art_target.sh, test_art_host.sh\nTest: 536-checker-intrinsic-optimization\n\nChange-Id: I865e3df6d4725e151ae195a86e02e090dae8dd29\n"
    },
    {
      "commit": "d7ea0437a8dd11253b55651fcfab23b65d504ee2",
      "tree": "ce73f4c05123ae8f1b99900a489b284ed1bc2dc1",
      "parents": [
        "4ba700af65f8346a96ba8d1dec051358a09487f4"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Sep 09 16:29:12 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Sep 23 09:43:06 2019 +0000"
      },
      "message": "Generalize ART APEX flavor handling in `art_apex_test.py`.\n\nIntroduce flag `--flavor` in `build/apex/art_apex_test.py` to select\nthe flavor of the ART APEX to check (`release`, `debug`, `testing`,\n`auto`). Default to `auto`, which auto-detects the flavor based on the\nname of the APEX passed as argument to the script.\n\nUpdate `build/apex/runtests.sh` and `build/apex/Android.bp` to use\nthese new options instead of `--debug` and `--testing`.\n\nTest: art/build/apex/runtests.sh\nBug: 139277987\nChange-Id: I463ae6504576f77ee70b3ac4111bd43c49e450d0\n"
    },
    {
      "commit": "4ba700af65f8346a96ba8d1dec051358a09487f4",
      "tree": "eaada5d02371099b84a5d0d27f210f635400f7ba",
      "parents": [
        "1550a669adb7e9328879bed24d9edc22eb97c994"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Sep 16 15:45:17 2019 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Sep 20 20:31:49 2019 +0000"
      },
      "message": "Clean up the use of profile_key / dex_locations\n\nThe profile key / dex locations names were sometimes used interchangeably\ndespite not being quite the same. Make clear, through renaming, which one\nis which.\n\nBug: 139884006\nTest: m test-art-host\nChange-Id: I9c79b2f2e577b873ee890333895cc90a7891499e\n"
    },
    {
      "commit": "1550a669adb7e9328879bed24d9edc22eb97c994",
      "tree": "80f1f230decc89af3397f258d3101a6cd0287338",
      "parents": [
        "357d4db493467e4dd74b2ba1d4b8d7c80f8409b6"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Aug 14 17:16:46 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Sep 20 18:48:44 2019 +0000"
      },
      "message": "JIT mini-debug-info: Add support for zygote shared memory\n\nEnsure that zygote\u0027s mini-debug-info is visible to apps.\n\nRemove global seqlock synchronization.\nIt was replaced by entry-level synchronization.\n\nTest: test.py -b -r --host --jit --64\nTest: device boots\nBug: 119800099\nChange-Id: I4885f9a4d44743d5608793a2e5d6453123d111f3\n"
    },
    {
      "commit": "357d4db493467e4dd74b2ba1d4b8d7c80f8409b6",
      "tree": "54850dac045ba281a68671483f8224ca3e6e9ad7",
      "parents": [
        "b0ce4d2e5e01f712443b146644166363d231abe0"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Sep 17 22:23:05 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Sep 20 16:30:48 2019 +0000"
      },
      "message": "Improve stack unwinding during gcstress tests.\n\nReparse process mmaps if new library has been loaded.\n\nTest: test.py -b -r --gcstress --optimizing --host\nChange-Id: If50c226e37301a435d007331d24625bbd391889d\n"
    },
    {
      "commit": "b0ce4d2e5e01f712443b146644166363d231abe0",
      "tree": "f5c4074b6382baed24faaf73f94e93d349481627",
      "parents": [
        "6df588bdd8d5b5751af851b511210bc4753cf7cc"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Sep 19 14:45:45 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Sep 20 16:00:07 2019 +0000"
      },
      "message": "Change some LOG(DEBUG) to VLOG(plugin)\n\nThese log messages are somewhat spamy and we can collect them with\nsome related ones under VLOG(plugin).\n\nTest: ./test.py --host\nTest: ./test/run-test --host --dev --runtime-option -verbose:plugin 975\nChange-Id: Ifae4be7891ccd09485b4c0edf98260739cace2f2\n"
    },
    {
      "commit": "6df588bdd8d5b5751af851b511210bc4753cf7cc",
      "tree": "79e56804ea2784d1028fcfa8f36cf08a5a501f0e",
      "parents": [
        "b4abe0a193871684ec712fc00b49e9764978b7c9"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Sep 19 21:49:31 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Sep 20 14:11:49 2019 +0000"
      },
      "message": "Generate mini-debug-info when running JIT tests.\n\nEnsure we get better backtraces from tests and make them profitable.\n\nTest: manual (check that gcstress test can get backtraces on host)\nChange-Id: Ia077ef70385b1e398e9045a86d5c727617c3f628\n"
    },
    {
      "commit": "b4abe0a193871684ec712fc00b49e9764978b7c9",
      "tree": "ad43199c8efa37e5f5cc4c6d86e72cfe0c9af899",
      "parents": [
        "f3e6c5eada7521d7c4ddc86307474f389f53081e"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri May 17 19:22:55 2019 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Sep 20 13:19:52 2019 +0000"
      },
      "message": "Limit visibility of ART libraries, binaries, and headers.\n\nThis simply records the visibilities necessary to keep things working - more\nwork is required to vet them.\n\nTest: m\nBug: 133140750\nChange-Id: I776d6b79c4c2b214556070c850ae5321d5f8b949\n"
    },
    {
      "commit": "f3e6c5eada7521d7c4ddc86307474f389f53081e",
      "tree": "a4df219b64e943945a99684a4ce5f9c1ae9ea25e",
      "parents": [
        "8df75ed1f95d8dc36e204f56a120237d338a918f"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Sep 17 20:06:37 2019 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Sep 20 12:55:36 2019 +0000"
      },
      "message": "Revert \"Include com.android.runtime in the \"runtime\" linker namespace.\"\n\nNo longer required for hwasan builds, since b/140790209 is fixed.\n\nThis reverts change-id I9b9081ec7508695b7ea860cd61b8b58dbd3feb51.\n\nThis also reverts the identified change for the memory regression in\nb/140648539.\n\nTest: Build \u0026 boot on taimen_hwasan-userdebug\nTest: Build \u0026 boot on crosshatch_hwasan-userdebug\nBug: 140790209\nBug: 139408016\nBug: 140648539\nChange-Id: I0f2c0a6523dfe73f2a578781579e62f4ae42e840\n"
    },
    {
      "commit": "8df75ed1f95d8dc36e204f56a120237d338a918f",
      "tree": "4846fbbfc73e9e28682a2f33efd66657bc84732b",
      "parents": [
        "bac1a8058e624b4222b5a87063a655065d4f2fe3"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Sep 19 18:34:05 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Sep 20 11:05:47 2019 +0000"
      },
      "message": "Do not propagate option `--get-random` to Vogar in `run-libcore-tests.sh`.\n\nThis bit was missing from commit\nd6e2c388d0d91c0e7cce66147cc188caed3208b6.\n\nTest: art/tools/run-libcore-tests.sh --mode\u003ddevice --no-getrandom\nTest: Rely on the ART Buildbot.\nBug: 141230711\nChange-Id: I25742c477594f9127c79054850787742b9086f43\n"
    },
    {
      "commit": "bac1a8058e624b4222b5a87063a655065d4f2fe3",
      "tree": "14414157ac65e46b7d518e570ae371674a414a5a",
      "parents": [
        "b45fc222fa77ee79e415f4a37bc2cf2eeedaec20"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Sep 19 12:48:43 2019 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Sep 19 21:18:33 2019 +0000"
      },
      "message": "Revert \"ART: Check dex file constraint A1\"\n\nThis will be checked by the method verifier. Checking it in the\nstructural verifier causes some apps to stop working.\n\nBug: 140921952\nTest: manual\n\nThis reverts commit d1abab7110101d65774f9d090850d20aaa07b661.\n\nChange-Id: I3cae361a9ad0f597bcd84d0a538fcf04e448c349\n"
    },
    {
      "commit": "b45fc222fa77ee79e415f4a37bc2cf2eeedaec20",
      "tree": "430f2db91993978e64d26a7f098039282168fa06",
      "parents": [
        "07710c52222fa412051cb9c3920894fe50b7d41c"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Sep 19 11:16:44 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Sep 19 20:55:04 2019 +0000"
      },
      "message": "Enable plugin VLOG with SetVerboseFlag(JVMTI_VERBOSE_OTHER)\n\nTest: ./test.py\nChange-Id: I33d47cd9fa936f00ba558352dcb975e2c2de1b52\n"
    },
    {
      "commit": "07710c52222fa412051cb9c3920894fe50b7d41c",
      "tree": "0c3a94e2a2c59db85b6f85fb6f4b017e71363537",
      "parents": [
        "fb11957a861bc2230773e74e969b45a92d4f587b"
      ],
      "author": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Mon Sep 16 15:53:38 2019 +0000"
      },
      "committer": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Thu Sep 19 16:43:22 2019 +0000"
      },
      "message": "Reland \"Java Heap Profiler for Perfetto.\" again\n\nThis reverts commit 284b1b01cf47335fa578e995150adcd0c6f02059.\n\nReason for revert: Added some nullptr checks with logging.\n                   Fixed behaviour when ReInitializing plugin.\n\nTest: dump heap for system_server\n\nTest: art/tools/run-gtests.sh -j4\n[ RUN      ] InstructionSetFeaturesTest.FeaturesFromAssembly\nart/runtime/arch/instruction_set_features_test.cc:161: Failure\nValue of: assembly_features-\u003eHasAtLeast(instruction_set_features.get())\n  Actual: false\nExpected: true\nAssembly features: ISA: Arm Feature string: div,-atomic_ldrd_strd,armv8a\nFeatures from build: ISA: Arm Feature string: div,atomic_ldrd_strd,armv8a\n[  FAILED  ] InstructionSetFeaturesTest.FeaturesFromAssembly (0 ms)\nKnown issue, see http://b/139425971\n\nTest: art/test/testrunner/testrunner.py --target --64\n4095/4260 (96%) tests passed.\n\nTest: art/tools/run-libcore-tests.sh --mode\u003ddevice --variant\u003dX64\nOutcomes: 13781. Passed: 13542, Failed: 0, Skipped: 140, Warnings: 99. Took 29m37s.\n\nTest: art/tools/run-jdwp-tests.sh --mode\u003ddevice --variant\u003dX64\nOutcomes: 401. All successful. Took 7m15s.\n\nBug: 136210868\n\nChange-Id: I7b8564c93926788acb0340de254836dff0ebd9f8\n"
    },
    {
      "commit": "fb11957a861bc2230773e74e969b45a92d4f587b",
      "tree": "9606da919e810fbb2f11633c93b6d43dc27700bb",
      "parents": [
        "c2c5948696ca128d862bf837472aacd4c28ce551"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Sep 18 15:04:53 2019 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Sep 18 22:15:02 2019 +0000"
      },
      "message": "Fixed issue in structural redefinition around class init\n\nOn non-x86 ISAs class initialization is two stage with a class first\nbeing \u0027kInitialized\u0027 and later being \u0027kVisiblyInitialized\u0027. This has\nto do with the memory model of non-x86 ISAs. Because we did not follow\nthis process correctly we could hit check-failures on non-x86 targets\nif the redefined class was not fully initialized when being redefined.\n\nTo fix this we force the class-linker to bring the initialization\nstate of the newly created class all the way to visibly initialized\nbefore allowing the redefinition to take place.\n\nTest: ./test.py --target\nBug: 134162467\nBug: 141236848\nChange-Id: I466861270b957a0fe6a90bda0bdabece950f99b2\n"
    },
    {
      "commit": "c2c5948696ca128d862bf837472aacd4c28ce551",
      "tree": "4b1edc06e2e16d041f49be451fde47e84fc952c6",
      "parents": [
        "e5abfbdd4f4135737fc1cb11813a798b58d2683d"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Sep 18 10:10:39 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Sep 18 20:27:25 2019 +0000"
      },
      "message": "Skip tests 1975 \u0026 1976 on redefine-stress\n\nThese tests use the invoke-polymorphic opcode that is not supported by\nslicer, causing these tests to fail in that configuration.\n\nBug: 134162467\nBug: 37272822\nTest: ./test.py --host --redefine-stress\nTest: ./test.py --host\nChange-Id: I3d0c5ddc1e8bf4d1de528aa3ae00ebb042af7af5\n"
    },
    {
      "commit": "e5abfbdd4f4135737fc1cb11813a798b58d2683d",
      "tree": "d3e6ca38b1d3d0ea199d0a9fa74bcffcdd9509fe",
      "parents": [
        "d6e2c388d0d91c0e7cce66147cc188caed3208b6"
      ],
      "author": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Tue Sep 17 15:04:54 2019 -0700"
      },
      "committer": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Wed Sep 18 18:00:38 2019 +0000"
      },
      "message": "Check revoked_mark_stacks empty in FinishPhase()\n\nBug: 140119552\nTest: art/test/testrunner/testrunner.py --target\nChange-Id: I69c3d99cb49db57752f7bf680ece45703001605a\n"
    },
    {
      "commit": "d6e2c388d0d91c0e7cce66147cc188caed3208b6",
      "tree": "729c7b6e597c453d946185c249f517e2867aa1dd",
      "parents": [
        "799759097db4319eb99061acf2f8c6600a77abee"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Sep 18 16:13:48 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Sep 18 17:49:13 2019 +0000"
      },
      "message": "Add Vogar expectations file for tests failing because of missing getrandom().\n\nAdd Libcore tests using the `getrandom()` syscall (introduced in Linux\n3.17) to a new expectations\nfile (`art/tools/libcore_no_getrandom_failures.txt`) and add new\noption `--no-getrandom` to script `art/tools/run-libcore-tests.sh` to\nhonor this expectations file.\n\nThis option is meant for ART Buildbot devices that have a kernel older\nthan Linux 3.17, like fugu (Nexus Player) devices, which runs\nLinux 3.10.\n\nTest: Rely on the ART Buildbot, once crrev.com/c/1811251 is in.\nBug: 141230711\nChange-Id: I8c513da63012c86e81038fd1d3cbb57e8ac3c17c\n"
    },
    {
      "commit": "799759097db4319eb99061acf2f8c6600a77abee",
      "tree": "5cd955f9d23e8b1cdae7e50d227bf0b1651db9f5",
      "parents": [
        "4ac0e1571e015a01d75091c3daef065f9624ad77"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Sep 16 18:00:29 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Sep 18 15:11:52 2019 +0000"
      },
      "message": "Fix access to symbols of the Testing ART APEX on the ART Buildbot.\n\nThe ART Buildbot build recipe was missing a step creating a symlink to\nthe ART APEX\u0027s symbols directory, as we use the Testing ART APEX,\nwhich is not supported by the standard build recipes (on purpose).\n\nTest: Check that stack traces are properly symbolized on the ART Buildbot\nBug: 141004137\nBug: 129534335\nChange-Id: Ide9eda7019bdaa21732a8818cd6cebd40c7b4f77\n"
    },
    {
      "commit": "4ac0e1571e015a01d75091c3daef065f9624ad77",
      "tree": "4d13edeab88bd6fd724388c48385b0c3cca4f3a8",
      "parents": [
        "5a2301d897294ff4ee6de71f459dc2566dc3fa1a"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Sep 18 06:14:50 2019 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Sep 18 06:14:50 2019 +0000"
      },
      "message": "Revert \"Revert \"Basic structural redefinition support\"\"\n\nThis reverts commit 5a2301d897294ff4ee6de71f459dc2566dc3fa1a.\n\nBug: 134162467\n\nReason for revert: Relanding as unclear if issue is due to topic.\n\nChange-Id: Ib1d1cf2e9132e30c9649b760ae9ae2d8ceacf843\n"
    },
    {
      "commit": "5a2301d897294ff4ee6de71f459dc2566dc3fa1a",
      "tree": "2bd06ab3f463734994b3d251f6115514520dbb3f",
      "parents": [
        "4eb6eb40e88214fcc874d93e75660cb580cb4d58"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Sep 18 06:11:22 2019 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Sep 18 06:12:13 2019 +0000"
      },
      "message": "Revert \"Basic structural redefinition support\"\n\nThis reverts commit c971eafeff43e4e26959a6e86b62ab0a8f1a6e1c.\n\nBug: 134162467\n\nReason for revert: Breaks on redefine-stress\n\nChange-Id: I4e38da23d65b5b34b26b5ab537a3583328e078a4\n"
    },
    {
      "commit": "4eb6eb40e88214fcc874d93e75660cb580cb4d58",
      "tree": "4d13edeab88bd6fd724388c48385b0c3cca4f3a8",
      "parents": [
        "c971eafeff43e4e26959a6e86b62ab0a8f1a6e1c"
      ],
      "author": {
        "name": "Balaram Makam",
        "email": "b.makam@samsung.com",
        "time": "Tue Sep 10 09:41:29 2019 -0500"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Sep 18 01:20:03 2019 +0000"
      },
      "message": "[optimizing] Improve constant folding on logical and\n\nConstant fold a \u0026 ~a \u003d ~a \u0026 a \u003d 0.\n\nTest: added test to 442-checker-constant-folding\nTest: test-art-host,test-art-target\nChange-Id: Ib637c93e99ce22dd1ecd5684d05ce5ca4c9c823a\n"
    },
    {
      "commit": "c971eafeff43e4e26959a6e86b62ab0a8f1a6e1c",
      "tree": "f8647487e7465712fd73118ceb89e13167a12648",
      "parents": [
        "1ba7e8c10af4e270864a417044244d63db53ccf5"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Aug 13 10:50:38 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Sep 17 23:52:12 2019 +0000"
      },
      "message": "Basic structural redefinition support\n\nThis adds basic support for adding methods and fields to already\nloaded classes using redefinition. This \u0027structural class\nredefinition\u0027 is currently limited to classes without any virtual\nmethods or instance fields. One cannot currently structurally redefine\nmultiple classes at once nor will structural redefinition trigger the\nstandard redefinition events.\n\nAfter structural redefinition all references to the old class, and its\nfields and methods are atomically updated. Any memory associated with\nthe static fields of the old class is zeroed. Offsets for field access\nmight change.  If there are any active stack frames for methods from\nthe redefined class the original (obsolete method) code will continue\nto execute. The identity hash code of the redefined class will not\nchange. Any locks being held, waited or blocked on by the old class\nwill be transferred to the new class.\n\nTo use this feature the process must be debuggable and running with\n-Xopaque-jni-ids:true.\n\nFor device testing use a wrap.sh that adds the following flags:\n\n    \u0027-Xopaque-jni-ids:true -Xcompiler-option --debuggable -XjdwpProvider:adbconnection\u0027\n\nStructural redefinition only available using the\n\"com.android.art.UNSAFE.class.structurally_redefine_class_direct\"\nextension. This will not trigger the normal class-redefinition events.\nOnly one class may be redefined at a time.\n\nNB There are still some holes in this potentially allowing obsolete\nmethods/fields to be visible. Most notably during jni-id, MethodHandle\nand VarHandle creation as well as potentially other places in the\nruntime. These holes will be closed by later CLs. Until then the\nextension to access structural class redefinition will remain tagged\nas UNSAFE.\n\nTest: ./test.py --host --all-compiler\nBug: 134162467\n\nChange-Id: I825d3a4bdb9594c0147223ae69f433ce9bbfc307\n"
    },
    {
      "commit": "1ba7e8c10af4e270864a417044244d63db53ccf5",
      "tree": "5674e60920995f3520d85bf9e681f285ef87fbb6",
      "parents": [
        "849439ac18cc36972c145fef2e0f54dea36ff131"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Sep 03 17:10:42 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Sep 17 21:25:30 2019 +0000"
      },
      "message": "Fix uses of DW_CFA_restore_state in assembly code.\n\nThe specification does not define how DW_CFA_restore_state affects the CFA.\nThere is no de-facto consensus on the expected behaviour between tools and\nsometimes even the same tool might differ for different architectures.\n\nTherefore we must always explicitly set the CFA after the state restore.\n\nBug: 31975598\nBug: 140407634\nTest: \"test.py -r --gcstress --optimizing --host\" + extra backtrace checks.\nTest: \"objdump -Wf\" and manually check that all restores match saves.\nChange-Id: Ic1547149f2159e77887d48dedd4afb7e000066e8\n"
    },
    {
      "commit": "849439ac18cc36972c145fef2e0f54dea36ff131",
      "tree": "f099b4ebf92674674e332c85ff99b05b9bbdb6e7",
      "parents": [
        "973f8c48154526f1211d8be3f95855bce753f76c"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Sep 16 15:09:16 2019 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Sep 17 19:21:03 2019 +0000"
      },
      "message": "Refactor the management of profile keys\n\nMake the profile key generation dependent on the actual profile object\n(non-static). This will allow us to add additional information into the\nkey, depending on the profile version. For example, for the boot image, we\nmay add the architecture so that we can capture the differences between 32\nand 64 bits.\n\nBug: 139884006\nTest: m test-art-host\nChange-Id: Id1ad60ac50adcf8bfe011b8d843c4cc4e9d5fc0f\n"
    },
    {
      "commit": "973f8c48154526f1211d8be3f95855bce753f76c",
      "tree": "2965072335ad22d5f2ee94abbefc4fd07d919600",
      "parents": [
        "8d8a98c8cdff564962b49e6b4c297477d5fbfb30"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Sep 13 18:31:59 2019 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Sep 17 19:21:03 2019 +0000"
      },
      "message": "Create boot image profiles with the appropriate version\n\nBug: 139884006\nTest: m test-art-host\nChange-Id: I89227d980121d548ed4b9b1e8f3c6e2c78b5ef97\n"
    },
    {
      "commit": "8d8a98c8cdff564962b49e6b4c297477d5fbfb30",
      "tree": "72823c103454fdb2820c5ced9992e01c57f47364",
      "parents": [
        "01fc470f59ec2721023b458a3a8f64e931c730c5"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Sep 06 14:30:39 2019 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Sep 17 19:21:03 2019 +0000"
      },
      "message": "Add a new boot image profile format\n\nThe new format adds additional method flags which will capture the\nfollowing states:\n  - am start / post startup\n  - boot / post boot\n  - foreground / background\n  - startup classification bin (see code comments)\n\nThe extension is currently only available for boot image profile because\nit expands the profile memory and disk footprint. A stress test shows that\nthe new format requires:\n  - profile content: 10 dex files, 2^16 methods, all in, no inline caches\n    (that\u0027s way more than we should see in practice)\n  - 1.2MB extra ram (3.9MB compared to 2.6MB)\n  - 1.1MB extra disk space (1.5MB compared o 379K)\n\nThe ram scales down with less data (e.g. for 5 dexes the RAM is only 6KB\nmore). The disk space is drastically reduced if the zip algorithm is able\nto compress the data efficiently (e.g in the idea case, when all bits are\nof the same value, it only adds 5K of extra space).\n\nThe threshold for size warnings/errors were adjusted based on the new\nvalues.\n\nBug: 139884006\nTest: m test-art-host-gtest\nChange-Id: I1543309d769c7d263a3e5f06cd8a2cf476999253\n"
    },
    {
      "commit": "01fc470f59ec2721023b458a3a8f64e931c730c5",
      "tree": "45358e77b46342d53a9f12bae9c111204c841879",
      "parents": [
        "7539b4073011a2a733d7a7170449519cf71866a3"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Sep 17 09:29:22 2019 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Sep 17 16:31:34 2019 +0000"
      },
      "message": "Fix test 1974\n\nTest 1974 would print different messages depending on if an object was\nfreed or not. This could cause the test to incorrectly fail.\n\nTest: ./test.py --host\nChange-Id: Idbcfdb3c08412b7ea969b6ca6d95493342598e0c\n"
    },
    {
      "commit": "7539b4073011a2a733d7a7170449519cf71866a3",
      "tree": "46a5a0cbda5880add3aa85adc0d0da6b0dd1bc0e",
      "parents": [
        "f4666af9f4a3a029c1a076358526f8437f4f4b43"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Sep 17 09:20:22 2019 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Sep 17 16:23:46 2019 +0000"
      },
      "message": "Fix test 1974 expected output\n\nTest fails because of missing \"!\" in the expected output.\n\nTest: test/run-test --always-clean --dex2oat-jobs 4 --host --prebuild --compact-dex-level fast --jit --runtime-option -Xjitthreshold:0 --no-relocate --gcstress --runtime-option -Xcheck:jni --64 1974-resize-array\nChange-Id: I9dcabf3041fc380e3f3b8f1d94b41f71e5e26dac\n"
    },
    {
      "commit": "f4666af9f4a3a029c1a076358526f8437f4f4b43",
      "tree": "1948b5533c4766b61466af28906e3438dc5e0e73",
      "parents": [
        "8e2c78d6dfddaceb602ae356e42af4eff19cc74a"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Sep 03 12:45:29 2019 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Sep 17 16:07:08 2019 +0000"
      },
      "message": "Revert^2 \"Fix profile saver hotness for AOT code\"\n\nAdded diagnostic to debug flakiness.\n\nTest: test/run-test --always-clean  -O --prebuild --optimizing --no-relocate --runtime-option -Xcheck:jni --64  2230-profile-save-hotness\n\nBug: 139883463\n\nThis reverts commit 775d38d8492ba8c60dba968064d6e0ac44e0b372.\n\nChange-Id: Ia0b45791be4c5c3a990bb030f5d68cef577b4474\n"
    },
    {
      "commit": "8e2c78d6dfddaceb602ae356e42af4eff19cc74a",
      "tree": "88311e37873564385470e629d1f0aca80525051b",
      "parents": [
        "3f43b9314da361811bb3cd258b28dff0fe56e7cc"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Sep 16 17:22:59 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Sep 17 09:25:15 2019 +0000"
      },
      "message": "Generate mini-debug-info when running tests.\n\nEnsure we get better backtraces from tests and make them profitable.\n\nTest: manual (check that gcstress test can get backtraces on host)\nChange-Id: Ie6ed399c331786c74c608ccc7f383795131cd46a\n"
    },
    {
      "commit": "3f43b9314da361811bb3cd258b28dff0fe56e7cc",
      "tree": "d4e5a326e06d8db06e42e8c7d81512ef6a256f7f",
      "parents": [
        "5012df2a3f16d62845182f225c92157e9bb64a27"
      ],
      "author": {
        "name": "Wang Han",
        "email": "wanghan1995315@gmail.com",
        "time": "Sat Sep 14 16:47:47 2019 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Sep 17 03:44:18 2019 +0000"
      },
      "message": "libartbase: Check kernel support for membarrier(2)\n\n * Avoid logspam in dmesg on unsupported kernels.\n\nChange-Id: Iad18b1c93723fc8f21fa746fe6084232c4f5cc22\n"
    },
    {
      "commit": "5012df2a3f16d62845182f225c92157e9bb64a27",
      "tree": "e7972617a05109993bde1ac4ada0fae48b53bdc8",
      "parents": [
        "a49b04f66e15a8f75fec831a01180625daa2c556"
      ],
      "author": {
        "name": "Artur Satayev",
        "email": "satayev@google.com",
        "time": "Fri Sep 06 18:26:39 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Sep 16 18:00:11 2019 +0000"
      },
      "message": "Do not initialize VeriClass java objects unless precise mode is enabled.\n\nThis allows running veridex in inprecise mode where --core-stubs do not have java.lang.* classes to resolve.\n\nTest: manual\nChange-Id: I8d9eb49c22437c9f4da0101777391658f18e9b8c\n"
    },
    {
      "commit": "a49b04f66e15a8f75fec831a01180625daa2c556",
      "tree": "53cc4cf50ddcb9f01da7b292760662f5437057a2",
      "parents": [
        "70f2314b46bb98f80de38d3217c2bdad3adaba9b"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Sep 16 14:53:15 2019 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Sep 16 15:33:39 2019 +0000"
      },
      "message": "Revert \"ART: Detect target run-test timeout and print a message\"\n\nThis reverts commit 2704d0ac013e46cb237a1a13e607fa644fde4c03.\n\nReason for revert: The CL swallows the exit code, which breaks tests.\n\nBug: 140935398\nChange-Id: Ica4e8461b5465063e8c726285c5fed8e4ee6d93b\n"
    },
    {
      "commit": "70f2314b46bb98f80de38d3217c2bdad3adaba9b",
      "tree": "87eabd6e2dd4c6c1a939cc908d8d2d054307b1f4",
      "parents": [
        "284b1b01cf47335fa578e995150adcd0c6f02059"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Sep 13 17:37:33 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Sep 14 11:27:20 2019 +0000"
      },
      "message": "Fix ODR issue with dex2oat and libcrypto\n\ndex2oat links against both static and shared libcrypto, which causes\nODR issues in the new FIPS self test code.  Remove the unnecessary\nstatic linkage.\n\nBug: 137267623\nTest: treehugger\nChange-Id: I484ef9fb8d6599828310c31f7d54571c93f55d56\n"
    },
    {
      "commit": "284b1b01cf47335fa578e995150adcd0c6f02059",
      "tree": "a165ba397ce26aa19fcd1b49081d36808a33b9d1",
      "parents": [
        "4fa78a0356cd8a9501e427afc5c1bb95eea70ba3"
      ],
      "author": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Sat Sep 14 00:18:42 2019 +0000"
      },
      "committer": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Sat Sep 14 00:27:18 2019 +0000"
      },
      "message": "Revert \"Reland \"Java Heap Profiler for Perfetto.\"\"\n\nThis reverts commit 5a446bd6c72d25ed2435fb2279bd8617ad003d2e.\n\nReason for revert: Multiple gtests failing\n\nChange-Id: I07abd641d49518a48aed7e401c1927aa7c027937\n"
    },
    {
      "commit": "4fa78a0356cd8a9501e427afc5c1bb95eea70ba3",
      "tree": "b0104dba99cf38dae2933d01df629f56e3f880b4",
      "parents": [
        "38a281806b7c8d5c5a4b8124a4e5409c6e4f7aa7"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Sep 12 09:35:24 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Sep 13 21:56:47 2019 +0000"
      },
      "message": "Revert^2 \"Additional sanity checking for JIT thresholds\"\n\nThis reverts commit f923b09ee869da8a7fec8fc4ed860b6f3eaa7337.\n\nChange to use clamping of JIT thresholds rather than fatal errors if\nout of bounds since it\u0027s easy to violate expectations by only setting\none threshold option.\n\nBug: 140587109\nTest: run-test --host -O --prebuild --compact-dex-level fast --jit \\\n      --no-relocate --runtime-option -Xcheck:jni \\\n      638-checker-inline-cache-intrinsic\nTest: art/test/testrunner/testrunner.py --host --64\n\nChange-Id: I866c3f93e074c63586951f37c1c97b6fd6e4c2a6\n"
    },
    {
      "commit": "38a281806b7c8d5c5a4b8124a4e5409c6e4f7aa7",
      "tree": "1bec94e6f34ae53b66be4c78f3f7cd5574f08faa",
      "parents": [
        "2704d0ac013e46cb237a1a13e607fa644fde4c03"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Sep 13 11:36:11 2019 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Sep 13 11:45:04 2019 -0700"
      },
      "message": "ART: Add exit-code option to signal_dumper\n\nTo work around a corner-case behavioral difference in toybox timeout,\nadd an option to define the exit code on timeout.\n\nUse this for target run-tests.\n\nBug: 140935398\nBug: 141007616\nTest: manual\nChange-Id: I4c5a93007af58861ede66dc376571a0fbefa38fa\n"
    },
    {
      "commit": "2704d0ac013e46cb237a1a13e607fa644fde4c03",
      "tree": "6e40a70de240b8ab64ee97da8804102ef9252949",
      "parents": [
        "5aae3dbb09bffe7a38c994dc6909b2e52048b477"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Sep 13 11:27:04 2019 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Sep 13 11:45:01 2019 -0700"
      },
      "message": "ART: Detect target run-test timeout and print a message\n\nTo make it more obvious that a timeout has happened, detect it\nand print a message to appear in the shell log (not logcat).\n\nBug: 140935398\nTest: manual\nChange-Id: I0c9d939a7822c835f603ff42cb4972a44dce29b0\n"
    },
    {
      "commit": "5aae3dbb09bffe7a38c994dc6909b2e52048b477",
      "tree": "cca224c6f079ac54f041328b3836e478379c680f",
      "parents": [
        "5d775eb9bdaa4496e47dede6915fb3b15bf1df16"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Sep 13 10:24:57 2019 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Sep 13 11:44:10 2019 -0700"
      },
      "message": "ART: Switch to executable test in run-test\n\nCheck that the signal_dumper file exists and is executable.\n\nBug: 140935398\nTest: art/test/testrunner/testrunner.py -t 001-HelloWorld\nChange-Id: Ifb30e5c65109617b6b5fa0ce2e40629a0228b963\n"
    },
    {
      "commit": "5d775eb9bdaa4496e47dede6915fb3b15bf1df16",
      "tree": "db0ec11912b70b2e726b1c1f7a498f1d154f007e",
      "parents": [
        "29bfb0c871cec2aa56c0cf4d037a1f42f3398cd3"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Sep 13 09:54:55 2019 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Sep 13 11:44:10 2019 -0700"
      },
      "message": "ART: Fix signal_dumper detection in run-test\n\nFix the testing APEX name to com.android.art.\n\nIf asked to run under chroot, only look into paths under the chroot. That\nmeans we can no longer use PATH lookup as fallback. Hardcode /system/bin\ninstead.\n\nBug: 140935398\nTest: chroot test\nChange-Id: Ief33714c0662ff4b254f8bcc556b8be558d92e2c\n"
    },
    {
      "commit": "29bfb0c871cec2aa56c0cf4d037a1f42f3398cd3",
      "tree": "17e0e0286b9437e8c855b61015ad27875d4a6912",
      "parents": [
        "6ad30a246b12317fa4f9469023017e4b9403d67d"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Sep 12 15:17:43 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Sep 13 17:58:58 2019 +0000"
      },
      "message": "ART: Add env variable to increase run-test timeouts\n\nTo generally increase timeouts, allow an environmental factor. This\nis meant for slow hosts or devices.\n\nWe may want to look into trying to auto-detect the necessity of this.\n\nBug: 140935398\nTest: ART_TIME_OUT_MULTIPLIER\u003d10 art/test/run-test --host --dev 001-HelloWorld\nChange-Id: I3f751b5e824da52e6441691b944eb99c1c3692b3\n"
    },
    {
      "commit": "6ad30a246b12317fa4f9469023017e4b9403d67d",
      "tree": "1a12cbb0fbc2ccf880cb78f4f591ab93f0204201",
      "parents": [
        "87beba30796dddb12a1dac7cb3c8f72d9b20e9f2"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Sep 12 15:12:36 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Sep 13 17:58:58 2019 +0000"
      },
      "message": "ART: Make run-test timeout dependent on sanitization\n\nOnly sanitization shows really long runs. Lower the default timeout\nto 10 minutes and attempt to detect sanitized builds.\n\nBug: 140935398\nTest: art/test/testrunner/testrunner.py -b --host\nTest: SANITIZE_HOST\u003daddress art/test/testrunner/testrunner.py -b --host\nChange-Id: I6c40ba310e8c177c1621ac75264a838efecfac83\n"
    },
    {
      "commit": "87beba30796dddb12a1dac7cb3c8f72d9b20e9f2",
      "tree": "19bfa943a6feeb7a661411a07eea47db4fe91206",
      "parents": [
        "9e3954db9a21c852c411db4118bf910de6f4dbcb"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Aug 09 14:20:32 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Sep 13 17:52:37 2019 +0000"
      },
      "message": "Fix some typos in ART.\n\nTest: n/a\nChange-Id: I25301ab0d749f253f54fd83787343f239088d510\n"
    },
    {
      "commit": "9e3954db9a21c852c411db4118bf910de6f4dbcb",
      "tree": "96ccc7ffc1c31732e1163537912cb559eb8934e5",
      "parents": [
        "40fb15bcc5803e5bce621b4c96da6bb54b48dba6"
      ],
      "author": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Thu Sep 12 15:58:52 2019 -0700"
      },
      "committer": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Fri Sep 13 17:51:54 2019 +0000"
      },
      "message": "Bump stack overflow gap for hwasan.\n\nBug: 140830363\nTest: CtsLocationTestCases:android.location.cts.ScanningSettingsTest\nChange-Id: I48574f5fec005f4047f357f9d712becf3c91629d\n"
    },
    {
      "commit": "40fb15bcc5803e5bce621b4c96da6bb54b48dba6",
      "tree": "076656566944de1f4996933653379e92000e7d57",
      "parents": [
        "60931d9f0a6b63fec1bf44fa662032e930438f42"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Sep 12 11:16:28 2019 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Sep 13 15:58:42 2019 +0000"
      },
      "message": "Fix MethodHandle::GetTargetClass bug\n\nMethodHandle::GetTargetClass incorrectly asserted that ArtMethod types\nwere kind \u003c\u003d kLastValidKind instead of kind \u003c kFirstAccessorKind. This\nfixes that issue.\n\nTest: ./test.py --host\n\nChange-Id: I828a054ec89223b07a05bcb898d03d34608ad1e6\n"
    },
    {
      "commit": "60931d9f0a6b63fec1bf44fa662032e930438f42",
      "tree": "b8b0f7046f0a2e99a13f6babdfda05b962f9c38a",
      "parents": [
        "f0c94806a921e17c701797cc017b794c58033eb5"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Sep 12 10:12:11 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Sep 12 21:41:18 2019 +0000"
      },
      "message": "ART: Simplify and tighten run-test timeouts\n\nRemove the old read-barrier special casing. Read-barrier is the\ndefault now and performs well enough.\n\nUse 25min as run-test default. This is derived from ASAN continuous\ntesting. All other continuous test cases seem to stay below 10min.\nConsider a function of input values to tighten this further, e.g.,\nhost vs target.\n\nReduce the timeout in testrunner.py. Document the value and its\nconnection to run-test.\n\nBug: 140935398\nTest: art/test/testrunner/testrunner.py -b --host\nChange-Id: I4818f4897a675c3e14af0fb7d7257b9b52e7671c\n"
    },
    {
      "commit": "f0c94806a921e17c701797cc017b794c58033eb5",
      "tree": "3fc00b7216efabe58518f40ae4e4bc16dad6b0b7",
      "parents": [
        "d6fa4f24eae85b97c13728b846c430a8464839ee"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Aug 28 18:27:48 2019 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Sep 12 20:48:48 2019 +0000"
      },
      "message": "Remove support for aggregation counters from device ART profiles\n\nThis is in preparation to extend the profile format with more data for\nboot profiles.\n\nThe aggregation counters will be no longer needed and they complicate the\nlayout and structure.\n\nBug: 139884006\nTest: m test-art-host-gtest\nChange-Id: I8472d17300f866d0e1580ad5bd88fe061a893864\n"
    },
    {
      "commit": "d6fa4f24eae85b97c13728b846c430a8464839ee",
      "tree": "0e392007f44abbedba3aa8452c74fe5391dc9260",
      "parents": [
        "4fb71cc45b056b862680e2fecff55f855bd57795"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Sep 11 14:45:31 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Sep 12 17:29:44 2019 +0000"
      },
      "message": "Add some helper functions/constructors to ArraySlice\n\nThe ArraySlice has some nice functions for dealing with arrays. Add\nhelper constructors to make an ArraySlice out of the commonly used\nLengthPrefixedArray and their pointers. Also add some convenience\nthings such as getting the offset of an element and tightening the\nContains check to ensure that the input is properly aligned.\n\nTest: ./test.py --host\nBug: 140891089\nChange-Id: If8350c5716db943d86cae32ed7b17aa8f036c978\n"
    },
    {
      "commit": "4fb71cc45b056b862680e2fecff55f855bd57795",
      "tree": "c7e8f28c385b742570c2414ae976fc1efedb300a",
      "parents": [
        "52b4dc9048ecddf551ba2d8db43c3884e80dca93"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Sep 11 18:39:59 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Sep 12 14:07:28 2019 +0000"
      },
      "message": "Fix mention of `art_apex_test_host` in ART never-allow rules.\n\nThis ART module type used to be named `art_apex_test` but was not\nproperly renamed in ART never-allow rules.\n\nTest: m\nBug: 129534335\nChange-Id: Idba4ec9456db036155e0307902f917a2eb6866e0\n"
    },
    {
      "commit": "52b4dc9048ecddf551ba2d8db43c3884e80dca93",
      "tree": "4e61f2460c11c34588bdab6dd81d759b7b576c6b",
      "parents": [
        "5a446bd6c72d25ed2435fb2279bd8617ad003d2e"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Sep 12 11:56:52 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Sep 12 11:58:07 2019 +0100"
      },
      "message": "Fix comments in `test/etc/run-test-jar`.\n\nTest: art/test/run-test 001-HelloWorld\nBug: 138868214\nChange-Id: I99df4d843a3f20356bf6a1cf9b5abd1d72b96f2d\n"
    },
    {
      "commit": "5a446bd6c72d25ed2435fb2279bd8617ad003d2e",
      "tree": "cad94b86c888b89a96596430ae652a64e4decf35",
      "parents": [
        "f923b09ee869da8a7fec8fc4ed860b6f3eaa7337"
      ],
      "author": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Tue Sep 10 11:30:26 2019 +0000"
      },
      "committer": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Thu Sep 12 08:53:36 2019 +0000"
      },
      "message": "Reland \"Java Heap Profiler for Perfetto.\"\n\nThis reverts commit 8f70b9672c13a5ca19cf2c54ace3cb2f342f743a.\n\nReason for revert: Roll forward with fix. Add hprof_listener to threads\n                   allowed to start early.\n\nBug: 136210868\nTest: * art/tools/run-gtests.sh -j4\n        arm/instruction_set_features_test already failing at base\n        art/arm64/image_space_test  already failing at base\n        art/arm/image_space_test  already failing at base\n      * art/test/testrunner/testrunner.py --target --64\n      * art/tools/run-libcore-tests.sh --mode\u003ddevice --variant\u003dX64\n      * art/tools/run-jdwp-tests.sh --mode\u003ddevice --variant\u003dX64\n      * Start profile, killall -38, see dumped data.\n\nChange-Id: I90c3f8158d95d735fe2a67e25813543849dd0c4f\n"
    }
  ],
  "next": "f923b09ee869da8a7fec8fc4ed860b6f3eaa7337"
}
