)]}'
{
  "log": [
    {
      "commit": "6484611fd45e69db9f33f98bfd6864014b030ecf",
      "tree": "688a2326403cce6ce83425b218e3553f2c0ca12e",
      "parents": [
        "ea6f741e73dce964994c88f4c85a1be7ecbe44c0"
      ],
      "author": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Tue Mar 25 22:11:44 2025 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Wed Mar 26 17:56:59 2025 -0700"
      },
      "message": "Log moving-space end of previous compaction when corruption detected\n\nIf an object\u0027s class is found to be null past this pointer then the\ncorruption must have happened elsewhere.\n\nTest: ATP test-infra\nChange-Id: I9e8819ceaf99f3d6117115ddf7ef0aed0b774b0d\n"
    },
    {
      "commit": "ea6f741e73dce964994c88f4c85a1be7ecbe44c0",
      "tree": "eb786e43c6c44b50499b623fa3eb46d4456d099f",
      "parents": [
        "d7b8a30c974d62e6a84e8dee17383ef030bcd6bc"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Tue Mar 11 15:44:39 2025 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Wed Mar 26 17:09:58 2025 -0700"
      },
      "message": "Do not wait in ClearReferent\n\nMake IsNullOrMarkedHeapReference use a CAS when the GC requires an\nupdate, to make it safe to run it concurrently with clearing the\nreferent. This means we no longer have to wait in ClearReferent.\n\nBug: 399794032\nTest: Treehugger\nChange-Id: I599980bb093f674d83591b0c5dd9066d09a589af\n"
    },
    {
      "commit": "d7b8a30c974d62e6a84e8dee17383ef030bcd6bc",
      "tree": "c4667d48fdf99a9ddce9ccbaa566dbcc6d6c73e3",
      "parents": [
        "51a1a759c2579d4c50f9aeeab4a143f5eb1c6549"
      ],
      "author": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Tue Mar 25 20:57:54 2025 +0000"
      },
      "committer": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Wed Mar 26 15:30:07 2025 -0700"
      },
      "message": "Disable pre-gc-heap-verification in debug builds\n\nThere is enough evidence that the memory corruption bugs are manifesting\nduring the GC. So verifying the heap before GC won\u0027t help in identifying\nany bugs. On the other hand, it adds enough overhead to cause some\ntests\u0027 timeout.\n\nTest: art/test/testrunner/testrunner.py --host --debug\nChange-Id: Ia6480097c3259255e1ca6a6a885a16928b39e453\n"
    },
    {
      "commit": "51a1a759c2579d4c50f9aeeab4a143f5eb1c6549",
      "tree": "88cf44d8f6b00440d0445f34a7b6c54e9dd00511",
      "parents": [
        "d1bb715591ef86183dc914f3488b8cf3e3685b42"
      ],
      "author": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Tue Mar 25 18:45:20 2025 +0000"
      },
      "committer": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Wed Mar 26 15:29:36 2025 -0700"
      },
      "message": "Add card-table verification in marking pause\n\nCard corresponding to a marked object with unmarked reference should be\ndirty in the marking pause.\n\nBug: 382077046\nTest: art/test/testrunner/testrunner.py --host\nChange-Id: Ifffcb66a99b43f5613b11576a4630465385a0baa\n"
    },
    {
      "commit": "d1bb715591ef86183dc914f3488b8cf3e3685b42",
      "tree": "8a9d0b5659d7d7e6e008e1b4fecde9726c675d13",
      "parents": [
        "71493a2226e71b49c6bcdb6f8341e717a7dec3de"
      ],
      "author": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Thu Mar 20 22:25:35 2025 +0000"
      },
      "committer": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Wed Mar 26 15:29:36 2025 -0700"
      },
      "message": "Validate GC-roots during marking phase\n\nBug: 382077046\nTest: art/test/testrunner/testrunner.py --host --debug\nChange-Id: Ib555c08dff3d31e83f38c6bba62aec7ced16fb92\n"
    },
    {
      "commit": "71493a2226e71b49c6bcdb6f8341e717a7dec3de",
      "tree": "2c93caaf5e6a221de21cd535929fc164e2fe0cff",
      "parents": [
        "90d0f71fde6da6382d27d008644e02e60fbe9942"
      ],
      "author": {
        "name": "Liana Kazanova (xWF)",
        "email": "lkazanova@google.com",
        "time": "Wed Mar 26 15:05:34 2025 -0700"
      },
      "committer": {
        "name": "Liana Kazanova (xWF)",
        "email": "lkazanova@google.com",
        "time": "Wed Mar 26 15:11:34 2025 -0700"
      },
      "message": "Revert \"Enable thread exit checks for bionic\"\n\nThis reverts commit 480263c191e49f9f766c643a9c295e9c42b799aa.\n\nReason for revert: DroidMonitor: Potential culprit for http://b/406573423 - verifying through ABTD before revert submission. This is part of the standard investigation process, and does not mean your CL will be reverted.\n\nChange-Id: I1796db379c64218505ee967006f8007044c3a8e0\n"
    },
    {
      "commit": "90d0f71fde6da6382d27d008644e02e60fbe9942",
      "tree": "2e3b01198a7f485a9655df30a370fd731b56bc45",
      "parents": [
        "480263c191e49f9f766c643a9c295e9c42b799aa"
      ],
      "author": {
        "name": "ELIYAZ MOMIN",
        "email": "mohammedeliyaz@google.com",
        "time": "Wed Mar 26 03:59:32 2025 -0700"
      },
      "committer": {
        "name": "Liana Kazanova (xWF)",
        "email": "lkazanova@google.com",
        "time": "Wed Mar 26 12:52:45 2025 -0700"
      },
      "message": "Revert \"Priority fixes\"\n\nRevert submission 3287177-priofix\n\nReason for revert: \u003cPotential culprit for  b/406285562  - verifying through ABTD before revert submission. This is part of the standard investigation process, and does not mean your CL will be reverted\u003e\n\nReverted changes: /q/submissionid:3287177-priofix\n\nChange-Id: I4a9960dc5a9adc27a8c04f0999e749eec133b457\n"
    },
    {
      "commit": "480263c191e49f9f766c643a9c295e9c42b799aa",
      "tree": "9bf0f0b66b0a384c553ad4980ff831eab9521da8",
      "parents": [
        "beee0d71bbbbe60dbe43faa8bf2f2325f13149de"
      ],
      "author": {
        "name": "Mythri Alle",
        "email": "mythria@google.com",
        "time": "Wed Mar 12 14:51:09 2025 +0000"
      },
      "committer": {
        "name": "Mythri Alle",
        "email": "mythria@google.com",
        "time": "Wed Mar 26 11:26:48 2025 -0700"
      },
      "message": "Enable thread exit checks for bionic\n\nWe expect that thread was detached before exiting so we can properly\nclean up the thread list. If the thread wasn\u0027t detached, then we may have\nalready exited threads in our thread list and access structures like\npthread_self which are no longer valid. For non-bionic we have check\nthat the thread was detached before exiting. This CL extends this check\nfor bionic too.\n\nBug: 376715376\nTest: art/test.py\nChange-Id: Ic12ba2d1e72f6cf76e6103e1332f71a5e37223b4\n"
    },
    {
      "commit": "beee0d71bbbbe60dbe43faa8bf2f2325f13149de",
      "tree": "3ecbb98f628bd0608a10f9edc32886d59f46eb23",
      "parents": [
        "69f06c6d522ed52fdbd823d700bc2a5f59bdd2e4"
      ],
      "author": {
        "name": "Sharjeel Khan",
        "email": "sharjeelkhan@google.com",
        "time": "Fri Mar 21 21:16:31 2025 +0000"
      },
      "committer": {
        "name": "Sharjeel Khan",
        "email": "sharjeelkhan@google.com",
        "time": "Wed Mar 26 09:28:37 2025 -0700"
      },
      "message": "Add __BIONIC_DISABLE_MALLOC_USABLE_SIZE_FORTIFY_WARNINGS to allow _FORTIFY_SOURCE\u003d3 with malloc_usable_size\n\nWe plan to make _FORTIFY_SOURCE\u003d3 global on device and ti_allocator.cc\nin art/openjdkjvmti uses malloc_usable_size. This specific use of\nmalloc_usable_size is allowed with _FORTIFY_SOURCE\u003d3 because it is only\nkeeping track of the allocation/deallocation byte counts. As a result,\nwe define __BIONIC_DISABLE_MALLOC_USABLE_SIZE_FORTIFY_WARNINGS to\ndisable compiler error.\n\nBug: 291762537\nTest: m with aosp/3539100\nChange-Id: Ic730efd21fc54d1dd0a584a06ab8c11b7678cc90\n"
    },
    {
      "commit": "69f06c6d522ed52fdbd823d700bc2a5f59bdd2e4",
      "tree": "20a67ab610ad99461bed36d0502ae63721a3bb4e",
      "parents": [
        "9da9e046d2d094f629a1e01ae8ab8fbf30355be2"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Mar 19 22:37:39 2025 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Mar 26 09:02:41 2025 -0700"
      },
      "message": "Clean up GetRootContainingLibartbase.\n\nIt worked by looking up the path to the DSO containing itself, which\nassumes libartbase is in its own DSO. That\u0027s no longer the case for\nmost (all?) gtests since they started linking ART libs statically in\nhttps://r.android.com/2623410.\n\nFrom that point on, the DSO was the test binary instead, so it always\nreturned the path two levels up from its directory. Do the same by\nlooking at the command line instead, to make this a no-op change.\n\nTest: presubmits\nBug: 404306250\nChange-Id: Ifa574cb7f7f490af8a8be7d0a03c9180c3dd2685\n"
    },
    {
      "commit": "9da9e046d2d094f629a1e01ae8ab8fbf30355be2",
      "tree": "08f1bf526de17a3c6a81e8b2063d9260bab47db5",
      "parents": [
        "94fda6291eab8b211e421ee476b6731fcea18423"
      ],
      "author": {
        "name": "Santiago Aboy Solanes",
        "email": "solanes@google.com",
        "time": "Thu Feb 27 16:00:16 2025 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Wed Mar 26 05:45:13 2025 -0700"
      },
      "message": "Move register check to IsInliningEncouraged\n\nThis allows to skip building callee graphs when the caller\ngraph already has a big environment. Usually in cases like these\nwe end up discarding the callee graph so we can save work and\nnot inline those.\n\nBug: 393108375\nTest: art/test/testrunner/testrunner.py --host --64 -b --optimizing\nChange-Id: I7c77fa994c8f9da73f9ab1a607aa57bef9a625ea\n"
    },
    {
      "commit": "94fda6291eab8b211e421ee476b6731fcea18423",
      "tree": "1d8c528ff311db582673265275e786e988a2941e",
      "parents": [
        "f3bd6dd11e0093348e4cdd8b16182ec9949b4f13"
      ],
      "author": {
        "name": "Mythri Alle",
        "email": "mythria@google.com",
        "time": "Tue Mar 11 16:27:16 2025 +0000"
      },
      "committer": {
        "name": "Mythri Alle",
        "email": "mythria@google.com",
        "time": "Wed Mar 26 04:08:25 2025 -0700"
      },
      "message": "Use sigwaitinfo instead of sigwait when waiting for signals\n\nsigwaitinfo also returns the siginfo_t that allows us to pass\nadditional information along with the signal number. Currently the\nadditional information is unused. This will be used when strting\nlong running method traces for ANR reports.\n\nBug: 352518093\nTest: art/test.py\nChange-Id: I19fc84b273a17a9b573ee41c545b4d4679ea9b39\n"
    },
    {
      "commit": "f3bd6dd11e0093348e4cdd8b16182ec9949b4f13",
      "tree": "e420ef0772db8bac137f20b59e77ea8bf950454c",
      "parents": [
        "60f787c7c29c333ff3a9d1651550853f1b00c8bb"
      ],
      "author": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Wed Mar 19 18:27:26 2025 +0000"
      },
      "committer": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Wed Mar 26 06:16:38 2025 +0000"
      },
      "message": "Don\u0027t expand mark-stack during mutator stack scanning\n\nWith the current implementation, we left a window where one mutator is\nwriting to the mark-stack, while another thread finds it full and tries\nto expand it. This can cause data race and missing references from being\nmarked.\n\nWe can instead have thread-local overflow arrays be allocated when the\nmark-stack is full, and pass them to the gc-thread to be processed\nafter checkpoint.\n\nThe CL also now directly pushes references to the mark-stack, rather\nthan creating a buffer on the stack. This avoids one (unnecessary) copy\nof references.\n\nTest: art/test/testrunner/testrunner.py --host --debug\nChange-Id: Id9d4303f9cc9e3f172e7b172508157836bd6a915\n"
    },
    {
      "commit": "60f787c7c29c333ff3a9d1651550853f1b00c8bb",
      "tree": "d84d123feb7ef29efd6fbc6bbb374e132ff35b7d",
      "parents": [
        "9939082a2677d63d81d0e2c00d865fa0e811a3e9"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Mar 24 10:53:23 2025 +0000"
      },
      "committer": {
        "name": "Vladimír Marko",
        "email": "vmarko@google.com",
        "time": "Tue Mar 25 11:01:18 2025 -0700"
      },
      "message": "Optimizing: LSE fixes for type conversion tracking.\n\nFix `UpdateValueRecordForStoreElimination()` for values that\ntracked Phi placeholders with a type conversion where the\nPhi placeholder was actually found to be unreplaceable.\n\nFix out of date debug check.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 341476044\nBug: 405552185\nBug: 405553153\nChange-Id: I7e07962d60f42f5a6984660e4b604a422145f35e\n"
    },
    {
      "commit": "9939082a2677d63d81d0e2c00d865fa0e811a3e9",
      "tree": "e2ce496053240b4198005012edb288a5dbd0dffc",
      "parents": [
        "c43c8f4ed950c5248ed8893487d035f9cb2c0437"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Mon Aug 12 17:03:06 2024 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Tue Mar 25 10:25:45 2025 -0700"
      },
      "message": "Priority fixes\n\nAdd thread_priorities.md\n\nCorrectly derive other priorities used by ART from the palette-\n-supplied ones instead of assuming a fixed mapping.\n\nProvide facilities to set niceness rather than Java thread priorities\ndirectly, so we can cache niceness in libcore.\n\nThread now uses a \"niceness\" field for caching priority. We keep\nthe \"priority\" field solely for legacy app use.\n\nProvide the required bidirectional mapping between priority and\nnicess.\n\nAdd small 733-priority-mappings run-test.\n\nFix the expectations for 913-heaps to account for new Thread field.\n\nThis is intended to be followed by an updated version of aosp/3314070 .\nHowever this CL needs to be usable with just the libcore changes in\naosp/3286067 .\n\nBug: 389104950\nTest: Treehugger\n\nChange-Id: If679fdaee55c83edc7bbe11f63e8918da1133181\n"
    },
    {
      "commit": "c43c8f4ed950c5248ed8893487d035f9cb2c0437",
      "tree": "21d0381aa6ba45d09b0d83b7aa834838ea574b45",
      "parents": [
        "6aa1a58f608417c5795ddb0371ca3fe6faab4096"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Tue Mar 25 10:00:45 2025 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Tue Mar 25 09:38:53 2025 -0700"
      },
      "message": "Remove the redundant check against cdex.\n\nThis CL partially reverts https://r.android.com/3515450.\n\nCurrently, the runtime uses a vdex file through the `OatFile` class.\nEven if there is only the vdex file (no oat file), the vdex file is\nstill used through `OatFileBackedByVdex`, a subclass of `OatFile`. There\nisn\u0027t a code path to use a dex file through the `VdexFile` class alone.\n\n`OatFile` already performs a series of dex validity checks, including a\ncheck on the dex magic, so it natrually rejects cdex, whose magic is no\nlonger considered valid since https://r.android.com/3515450. Therefore,\nthe additional check against cdex in `VdexFile` seems redundant.\n\nThis redundant check adds additional cognitive load: a vdex containing a\ncdex is rejected in `VdexFile`, while a vdex containing a normal dex\nwith other issues (e.g., invalid header) is rejected in `OatFile`.\n\nThis CL removes the redundant check. After this change, cdex is rejected\nin `OatFile`, in the same way as other issues.\n\nBug: 325430813\nTest: m art_runtime_tests \u0026\u0026 \\\n  out/host/linux-x86/testcases/art_runtime_tests/x86_64/art_runtime_tests \\\n  --gtest_filter\u003d\u0027OatFileTest.*\u0027\nChange-Id: Iddd9dc64cbf55fc878d953793848de6145e2afb2\n"
    },
    {
      "commit": "6aa1a58f608417c5795ddb0371ca3fe6faab4096",
      "tree": "79c52d58fe151890f0f1d86568a5cde153da2777",
      "parents": [
        "621d1350d431ed0cc3d4a5a43a079adc1d86a31f"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Tue Mar 25 10:00:39 2025 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Tue Mar 25 09:38:53 2025 -0700"
      },
      "message": "Add tests for rejecting cdex on load.\n\nBug: 325430813\nTest: m art_runtime_tests \u0026\u0026 \\\n  out/host/linux-x86/testcases/art_runtime_tests/x86_64/art_runtime_tests \\\n  --gtest_filter\u003d\u0027OatFileTest.*\u0027\nChange-Id: I4c8e92a018affcd4f29894d1df3b01dc75546adb\n"
    },
    {
      "commit": "621d1350d431ed0cc3d4a5a43a079adc1d86a31f",
      "tree": "367cc82675b7fbcc12a3104d163414803bf77413",
      "parents": [
        "877467efd7874f81f8cc2a61ac137dbe73c68891"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Mar 25 11:40:04 2025 +0100"
      },
      "committer": {
        "name": "Vladimír Marko",
        "email": "vmarko@google.com",
        "time": "Tue Mar 25 08:26:31 2025 -0700"
      },
      "message": "Optimizing: Fix type of `H{Instance,Static}FieldSet`.\n\nThe type has been erroneously set to the field type instead\nof `void` in\n    https://android-review.googlesource.com/2954595 .\nThis did not cause any issues other than a confusing graph\nvisualizer output.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nChange-Id: Ifd1b00b60a74354b78318ad6d1fe76ef49f106be\n"
    },
    {
      "commit": "877467efd7874f81f8cc2a61ac137dbe73c68891",
      "tree": "6d4c29761f119434de253aa75311e9807fa20f23",
      "parents": [
        "54710ff6753a2dcc8c272184554a6acb1c628331"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Mar 21 15:38:19 2025 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Mar 25 06:54:28 2025 -0700"
      },
      "message": "Run-test: Add couple more libraries to testing apex.\n\nWe need the libraries (and all the others already in the apex)\nfor running eng-prod tests.\n\nWe want to remove the testing apex, however for the time being\nthis is the fastest way to deliver the libraries to the device.\n\nTest: atest (with further local changes)\nChange-Id: Iedf041cea8293a362c02f32dc765a08d5b361015\n"
    },
    {
      "commit": "54710ff6753a2dcc8c272184554a6acb1c628331",
      "tree": "f502eb2af21a03c5e73434ce03b801c84d3b61f6",
      "parents": [
        "58ec44dac00d64b3f0d145eb2fcde157fea58240"
      ],
      "author": {
        "name": "Anton Romanov",
        "email": "anton.romanov@syntacore.com",
        "time": "Thu Mar 13 14:33:12 2025 +0300"
      },
      "committer": {
        "name": "Vladimír Marko",
        "email": "vmarko@google.com",
        "time": "Tue Mar 25 04:35:08 2025 -0700"
      },
      "message": "riscv64: add invoke-interface support in invokeExact.\n\nTest: art/test/testrunner/testrunner.py --target --64\nChange-Id: I3cd534326cbde4d9c10714138dbde3f3867ac9bf\n"
    },
    {
      "commit": "58ec44dac00d64b3f0d145eb2fcde157fea58240",
      "tree": "d0aedc4252d78ec1bc5a3923d6f3220c47a6432a",
      "parents": [
        "f3f10db89a30cb5957266b91002b9abf710cd2ee"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Mon Mar 24 17:57:07 2025 +0000"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Tue Mar 25 04:23:05 2025 -0700"
      },
      "message": "Simplify oatdump logic for --export-dex-to.\n\nThe logic for --export-dex-to was added 8 years ago by\nhttps://r.android.com/505156. It loads the vdex file after the OatFile\nobject is there, which is unnecessary today because the vdex file must\nbe loaded during the creation of the OatFile object and can be accessed\nthrough `OatFile::GetVdexFile`. Maybe the OatFile object could be\ncreated without a vdex file 8 years ago, but it\u0027s no longer the case.\n\nMoreover, the purpose of it getting the VdexFile object was to call\n`VdexFile::Unquicken` to \"unquicken\" the dex file, but quickening is not\na thing any more. Today, we can simply get the dex file from OatFile\nand we don\u0027t even need to get the VdexFile object.\n\nBug: 325430813\nTest: m art_oatdump_tests \u0026\u0026 \\\n  out/host/linux-x86/testcases/art_oatdump_tests/x86_64/art_oatdump_tests \\\n  --gtest_filter\u003d\"*/OatDumpTest.TestExportDex/*\"\nTest: Call oatdump with --export-dex-to and see the output being\n  identical before and after the change.\nChange-Id: Ib02263bde962730cb6cae3d488c8339f0dc766e6\n"
    },
    {
      "commit": "f3f10db89a30cb5957266b91002b9abf710cd2ee",
      "tree": "28791d92627dd6bf3882b3aa7cb6f7b24581e315",
      "parents": [
        "f675a98ccbc261c73ab9f12044541aca617f3b57"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Mar 11 02:35:07 2025 -0700"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Mar 25 03:24:23 2025 -0700"
      },
      "message": "Reland \"Pass the dex register array to NterpGetInstanceField.\"\n\nThis reverts commit 7e0bfd62fa99fa13156bebeb0c72247954ae31fd.\n\nReason for revert: Add check on storing to final field.\n\nChange-Id: I7d0ab5e13abca3be5a1eeb6311eb837d7b937e56\n"
    },
    {
      "commit": "f675a98ccbc261c73ab9f12044541aca617f3b57",
      "tree": "e7a745055fb0f4427b63f0c2845dc27533cc5c96",
      "parents": [
        "abf032d28d6ee925386379369403b364fbcb0d34"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Mon Mar 24 14:03:09 2025 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Mon Mar 24 09:09:35 2025 -0700"
      },
      "message": "Fix `art` script for Golem.\n\nhttps://r.android.com/3473928 (originally https://r.android.com/2643659)\nchanged `art` script to generate oat files in `dalvik-cache`. On Golem,\nthe dex file paths are relative, so the script couldn\u0027t compute the\nright `dalvik-cache` path for them. This CL fixes this issue.\n\nAlso, this CL deletes obsolete calls to a function that no longer\nexists.\n\nBug: 400394885\nTest: Golem\nChange-Id: I1137d2692c4f28134bb85536b6a7861e8ef0467d\n"
    },
    {
      "commit": "abf032d28d6ee925386379369403b364fbcb0d34",
      "tree": "64f0b7299297c7a4343712030408a27d8528e209",
      "parents": [
        "efe4925792735c2fd9dd95b7c67173b119ff2968"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 24 10:26:27 2025 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 24 07:35:14 2025 -0700"
      },
      "message": "Fix two issues in fast baseline compiler.\n\n- Add a missing fence after allocation.\n- Create a frame before fetching any register, otherwise, we may wrongly\n  use a caller-saved register that can be overwritten by the hotness\n  slow path.\n\nTest: 719-varhandle-concurrency\nChange-Id: I90278172e3d4f9a3561b269b35a59bd3e8ad1dfd\n"
    },
    {
      "commit": "efe4925792735c2fd9dd95b7c67173b119ff2968",
      "tree": "740cfcc4ad52e3b3d15fd608cfd045f6c18db1d8",
      "parents": [
        "b7dc01d1e485f8fae9ad8b91c519eb0cc32973b6"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Dec 18 13:20:40 2024 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Mar 24 12:39:57 2025 +0000"
      },
      "message": "Run-test: Add \u0027ArtTest\u0027 atest target\n\nAdd generic eng-prod test runner, which is to be used for run-tests.\nHowever, it should hopefully also generalize to all our other tests.\n\nTest: atest ArtTest (with further local changes)\nChange-Id: I6b477c7689440a62db234b7bf2f17168debb82d3\n"
    },
    {
      "commit": "b7dc01d1e485f8fae9ad8b91c519eb0cc32973b6",
      "tree": "3d403ff564b5731857fbde7ad811b13a5578004a",
      "parents": [
        "9c2a0a8bfc5369a110956ac26cf9cf145a6a4bb7"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 21 13:51:13 2025 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 24 05:26:49 2025 -0700"
      },
      "message": "Address review comments from aosp/2671457.\n\nTest: test.py\nChange-Id: I5b6b667847727d4de3944467885576a15f72846f\n"
    },
    {
      "commit": "9c2a0a8bfc5369a110956ac26cf9cf145a6a4bb7",
      "tree": "0c4515489f562ad221fe641e2c3a02329b4cc616",
      "parents": [
        "2371fcce4b16f06bf5d2280f0423264f9b948eb7"
      ],
      "author": {
        "name": "Almaz Mingaleev",
        "email": "mingaleev@google.com",
        "time": "Fri Mar 21 13:13:41 2025 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Sat Mar 22 07:07:51 2025 -0700"
      },
      "message": "arm64: fix reference unpoisoning in invokeExact intrinsic.\n\nAs reference is read from heap it should be unpoisoned.\n\nBug: 297147201\nTest: ART_HEAP_POISONING\u003dtrue art/test/testrunner/testrunner.py \\\n      -b --target --64 -t 2277\nChange-Id: I0d19af3b3b4326a443f6a80316cbc02c42092944\n"
    },
    {
      "commit": "2371fcce4b16f06bf5d2280f0423264f9b948eb7",
      "tree": "f4e10b7123b2915ecd5d7f45313c221044b4b309",
      "parents": [
        "3e4b2425a399a213def476775c0fc7c845bdebfb"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Mar 21 14:45:35 2025 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri Mar 21 11:54:32 2025 -0700"
      },
      "message": "Run-test: Remove sanitize_dex2oat_cmdline\n\nTest: ./art/test.py -r --host --target --optimizing --64\nChange-Id: Ic4b28b6cf5414d0a88c10a175b84255a0d78ea6c\n"
    },
    {
      "commit": "3e4b2425a399a213def476775c0fc7c845bdebfb",
      "tree": "d6b2ec52d909ed71ed00f209710dade7a04dffee",
      "parents": [
        "7ff689c7a1d5efc2dd5e05e66a57a614d136b24b"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Mar 14 20:08:15 2025 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri Mar 21 11:25:34 2025 -0700"
      },
      "message": "Fix libartpalette MCTS tests to not link the runtime statically.\n\nSince the test starts up a VM, it\u0027ll load the boot classpath and among\nother things register various internal native methods, which aren\u0027t\nstable APIs. That may lead to problems if libart is linked statically\nsince the boot classpath is loaded from device and could potentially be\nmore recent than the libart instance in the test (on devices that don\u0027t\ntake Mainline modules).\n\nHence avoid art_standalone_gtest_defaults and instead link\nlibnativehelper dynamically to start the VM using libart on the device.\n\nNote that earlier work in https://r.android.com/2375894 and\nhttps://r.android.com/2384058 got rid of the direct dependency on the\nruntime in the test (i.e. the art::CommonRuntimeTest inheritance), but\nwe still brought in runtime init code that got executed from\nJNI_CreateJavaVM.\n\nThis (again) disables the JNI test on host. It\u0027s possible to solve but\nnot worth the effort (see comment in palette_test.cc).\n\nTest: `atest art_standalone_libartpalette_tests` with a planted\n      libart-vs-BCP inconsistency based on b/402238495\nBug: 404306250\nChange-Id: I99817670ba58272cb9ef7df7e216a3df637472d3\n"
    },
    {
      "commit": "7ff689c7a1d5efc2dd5e05e66a57a614d136b24b",
      "tree": "6ee7604af4209d8c51fa9cacc6107c77292a197b",
      "parents": [
        "89a9e799a810f3dfc26b88659517937ee2fff12a"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Mar 21 15:28:26 2025 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri Mar 21 10:42:21 2025 -0700"
      },
      "message": "Update LUCI config\n\nTest: tools/luci/config/main.star\nChange-Id: Ie7c4ba4d23a202483ffd2daab47e7b80a38f7c39\n"
    },
    {
      "commit": "89a9e799a810f3dfc26b88659517937ee2fff12a",
      "tree": "47a53a43dc98486ba39a88a245f4eafd04856174",
      "parents": [
        "d6e56a41da24eb8f6bd0b7a38289c7442421b648"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 21 09:16:02 2025 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 21 10:02:41 2025 -0700"
      },
      "message": "Add more failing tests for host / gcstress / debug.\n\nTest: run-libcre-tests\nChange-Id: Ia21e8a11881f89b30be346ad0688e3d16e61cbb7\n"
    },
    {
      "commit": "d6e56a41da24eb8f6bd0b7a38289c7442421b648",
      "tree": "a21fe66dcc984ffb78e4c17176a2606b194e714c",
      "parents": [
        "9126e6fb2137d43bf6363e82b38bbd3edf428f2c"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Mar 14 22:05:52 2025 +0000"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Mar 21 16:38:33 2025 +0000"
      },
      "message": "Delete SDM files on \"pm delete-dexopt\" and \"pm compile --reset\".\n\nIf SDM files are installed and then cleaned up after becoming obsolete,\n\"pm delete-dexopt\" will put the app in a state where there is not dexopt\nartifacts to use. Therefore, for consistency in terms of app\nperformance, we should delete SDM files on \"pm delete-dexopt\" even if\nthey are not obsolete.\n\n\"pm compile --reset\" has a similar situation. If SDM files are installed\nand then cleaned up after becoming obsolete, \"pm compile --reset\" will\nput the app in a state where its dexopt artifacts are generated on\ndevice with the cloud profile (ideally, the behavior should be restoring\nthe SDM files, but that\u0027s impossible). Therefore, for consistency in\nterms of app performance (assuming locally generated artifacts and cloud\nartifacts have different performance), we should delete SDM files and\nregenerate dexopt artifacts on device on \"pm compile --reset\".\n\nBug: 377474232\nTest: atest ArtServiceTests\nChange-Id: If1934b6c7da19ad346f4962241bbdab13fa12ce6\n"
    },
    {
      "commit": "9126e6fb2137d43bf6363e82b38bbd3edf428f2c",
      "tree": "0587621dbefe0c73a1a39c7c3403541ad2dfab1b",
      "parents": [
        "f1cf622ecc1a27d95236dd0ec1da0936182ecafd"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Mar 14 21:55:58 2025 +0000"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Mar 21 09:37:10 2025 -0700"
      },
      "message": "Delete SDM and SDC files on a successful dexopt.\n\nAfter a successful dexopt (typically during background dexopt job), the\nSDM and SDC files become obsolete, so we delete them as an optimization,\nto release disk space as soon as possible.\n\nBug: 377474232\nTest: atest ArtServiceTests\nTest: atest art_standalone_artd_tests\nChange-Id: I9598e3b6d71a2575d73885cc4d772737f9bfb2b6\n"
    },
    {
      "commit": "f1cf622ecc1a27d95236dd0ec1da0936182ecafd",
      "tree": "c1c78799a3a1b64ec9e0a31e3fc74d75311bd2f4",
      "parents": [
        "751ffe4a74b5b7aa11f8449ed5d48e5f1a23e0fa"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Tue Dec 24 09:03:35 2024 +0000"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Mar 21 09:37:10 2025 -0700"
      },
      "message": "Support loading SDM files at runtime.\n\nThis is the last piece of platform support for Cloud Compilation.\n\nBug: 377474232\nTest: m test-art-host-gtest-art_runtime_tests\nTest: atest art_standalone_runtime_tests\nChange-Id: I3a7c1774c75334e55e9c98610745707dfcec35a2\n"
    },
    {
      "commit": "751ffe4a74b5b7aa11f8449ed5d48e5f1a23e0fa",
      "tree": "7de736c8561280b3c34fb2f5e0c7c0c29bb79d92",
      "parents": [
        "0f7d94bd99bb554d663a4a527155eee6192780ee"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Mar 14 21:10:02 2025 +0000"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Mar 21 09:37:10 2025 -0700"
      },
      "message": "Update the file GC to clean up SDM files.\n\nIf the best compilation artifacts are the ones generated on device, the\nfile GC should delete the SDM files.\n\nBug: 377474232\nTest: atest ArtServiceTests\nTest: atest art_standalone_artd_tests\nChange-Id: If2f7c31525ff9a8a03cc16fefc16a6ebcf9fad96\n"
    },
    {
      "commit": "0f7d94bd99bb554d663a4a527155eee6192780ee",
      "tree": "4c3a8211872d9a0ed91cebe00136b07c3ca877e4",
      "parents": [
        "0e235bd9b79c82e3962792eecb17ceb4bbc24089"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Mar 14 16:54:03 2025 +0000"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Mar 21 09:37:10 2025 -0700"
      },
      "message": "Count SDM files into TYPE_DEXOPT_ARTIFACT in ART-managed file stats.\n\nSDM files contain ODEX and ART files, which are dexopt artifacts.\n\nWe don\u0027t need to count the DM files containing VDEX files because the\nstorage manager counts them itself.\n\nThis CL implements the extension to getUsableArtifacts to achieve this,\nwhich is also necessary for the file GC in the next CL.\n\nAlso:\n- Fix a bug that the runtime images were not counted if the artifact\n  location is ArtifactsLocation.DM.\n- Replace @AutoValue classes with records, to simplify the code.\n\nBug: 377474232\nTest: atest ArtServiceTests\nTest: atest art_standalone_artd_tests\nChange-Id: If1d05d69051d09ebd7f10e6f487cd7892590921c\n"
    },
    {
      "commit": "0e235bd9b79c82e3962792eecb17ceb4bbc24089",
      "tree": "247e4740529eb0aeb8c791eacd8e785f28246148",
      "parents": [
        "4f163f8c78d545603474d032cd2b587dec289f04"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Mar 21 09:22:21 2025 -0700"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Mar 21 09:22:45 2025 -0700"
      },
      "message": "Add documentation about persistent states of the \u003cSDM, SDC\u003e file pair.\n\nBug: 377474232\nTest: N/A\nChange-Id: I4916e230cac732fbd5bef41944df75a9d2076b67\n"
    },
    {
      "commit": "4f163f8c78d545603474d032cd2b587dec289f04",
      "tree": "4760b780321eba624a77a2109a53a19d0d37c61a",
      "parents": [
        "dcc57092954854e5abb6a9fa21e6f13359673ee4"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Mar 21 06:31:58 2025 -0700"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Mar 21 06:31:58 2025 -0700"
      },
      "message": "Pass filename by reference.\n\nBug: 377474232\nTest: Presubmit\nChange-Id: Ib02f2f987c876c931ecc9ef42969eea0bbad9f77\n"
    },
    {
      "commit": "dcc57092954854e5abb6a9fa21e6f13359673ee4",
      "tree": "e1089290b2b9743260262ce4b3ceef1525784f3e",
      "parents": [
        "4383f83896529d015678c2e4d175f4578e7d9cf4"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Mar 14 15:56:06 2025 +0000"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Mar 21 10:04:44 2025 +0000"
      },
      "message": "Update input vdex selection logic for SDM.\n\nWhen the artifacts location is SDM_*, the vdex file is in the DM file,\nwhich is passed to dex2oat as a separate flag whenever it exists, so we\ndon\u0027t need to pass input vdex.\n\nBug: 377474232\nTest: atest ArtServiceTests\nChange-Id: I07726baa04e70bc22850e2ba5ce8df44dc5b80b0\n"
    },
    {
      "commit": "4383f83896529d015678c2e4d175f4578e7d9cf4",
      "tree": "106f54ae57194d9c9d2fad3a59806821a0ba86b0",
      "parents": [
        "aa405ccd29b7317dfe499fa63cc9fdaef2f049fb"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Thu Mar 13 15:48:55 2025 +0000"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Mar 21 10:04:43 2025 +0000"
      },
      "message": "Create SDC files on dexopt.\n\nBug: 377474232\nTest: atest ArtServiceTests\nChange-Id: Ia7ab6937bc7b1d9e5aaad1ca57bb0a22ad3fcab2\n"
    },
    {
      "commit": "aa405ccd29b7317dfe499fa63cc9fdaef2f049fb",
      "tree": "b9121ab6ec1e3483dedfa36f19ef338397a16541",
      "parents": [
        "5045a8060a75ccccea94eac7363744ed63580ff9"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Wed Mar 12 22:14:23 2025 +0000"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Mar 21 10:04:43 2025 +0000"
      },
      "message": "Add an artd method to create an SDC file.\n\nSee https://r.android.com/3539979 as well as\ngo/art-cloud-compilation-platform-design \"Overview\",\n\"Detailed design -\u003e SDC file\", and\n\"Detailed design -\u003e Incremental considerations\" for details.\n\nBug: 377474232\nTest: atest art_standalone_artd_tests\nChange-Id: I870016723d77e75540894ac0c29bf1b32bf835e7\n"
    },
    {
      "commit": "5045a8060a75ccccea94eac7363744ed63580ff9",
      "tree": "eeb8a7d5d62bbdd9d5968153a9c414bff2b1d7fd",
      "parents": [
        "b2d23dd55d0f1d16beb43a247d62bf09a8060665"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Wed Mar 12 16:45:38 2025 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Thu Mar 20 16:33:35 2025 -0700"
      },
      "message": "Allow APEX versions in the OAT header to be overriden.\n\nAPEX versions are stringified mtime\u0027s of the APEXes installed on device,\nfor detecting samegrade placebos (go/samegrade-placebos). In the case of\nCloud Compilation, we cannot put the APEX versions in the OAT header\nbecause the OAT file is generated on the server. Instead, we put the\nAPEX versions in a separate file (SDC file) when the SDM file is being\ninstalled on device. Therefore, we need a way to override the APEX\nversions in the OAT header.\n\nThis is a no-op change.\n\nBug: 377474232\nTest: m test-art-host-gtest-art_runtime_tests\nChange-Id: I69658b61942979ff7f56e4908ce3204bd0a2116e\n"
    },
    {
      "commit": "b2d23dd55d0f1d16beb43a247d62bf09a8060665",
      "tree": "e684811a36c48b5337ce34f9e9e872b267d1b569",
      "parents": [
        "6f3beba5e01780c30364e34be15335da51c4e0e5"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Wed Mar 12 16:44:02 2025 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Thu Mar 20 16:33:35 2025 -0700"
      },
      "message": "Add helper classes for reading and writing SDC files.\n\nSecure dex metadata companion (SDC) file is a file type that augments a\nsecure dex metadata (SDM) file with additional metadata. It is generated\non device when the SDM file is being installed.\n\nBug: 377474232\nTest: m test-art-host-gtest-art_runtime_tests\nChange-Id: I13cf86db9cdcca85e5b59bd992a4deddeeb57501\n"
    },
    {
      "commit": "6f3beba5e01780c30364e34be15335da51c4e0e5",
      "tree": "1f7fcdeefd53e4601a5ad585f9da0765870ce483",
      "parents": [
        "8badd481972993739e7711258f03a44638ca87a5"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Mar 14 18:00:37 2025 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Mar 20 15:50:43 2025 -0700"
      },
      "message": "Move more path logic for tests to testing.cc, so it can be used without\ndepending on CommonArtTest.\n\nPreparation to fix the libart-gtest dependency in\nart_standalone_libartpalette_tests.\n\nDue to a new #include, this necessitated fixing a bunch of `testing`\nnamespace references that could become ambigious wrt `art::testing`.\n\nTest: m generate-boot-image\nTest: art/tools/buildbot-build.sh\nBug: 404306250\nChange-Id: Iafb3d73148125775c9c5ddbcbaef39dc61859118\n"
    },
    {
      "commit": "8badd481972993739e7711258f03a44638ca87a5",
      "tree": "2eaaab32b255ddc6d569cf3e255eb1acae79f9b8",
      "parents": [
        "aa42bf962cdd12abac143a26a8590f563910f7b6"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Mar 19 15:21:10 2025 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Mar 20 07:31:29 2025 -0700"
      },
      "message": "Run-test: Remove intermediate files from the build output.\n\nThis removes 90%+ of files in the data for run-tests,\nwhich is needed to build but not to execute the tests.\n(original source code and java-bytecode class files)\n\nTrade-fed has its own implementation of \u0027adb push\u0027,\nwhich is very slow, so the extra files considerably\nslowed everything down.\n\nTest: ./art/test.py -r --jvm --host --target --optimizing --64\nChange-Id: Ie4da1b9c9e94f0d265fdb384948a073593983ac5\n"
    },
    {
      "commit": "aa42bf962cdd12abac143a26a8590f563910f7b6",
      "tree": "ccb6a7d1f5fedfa5f4bf79fbd9fbed5230c0be58",
      "parents": [
        "b67aed38aae437ee6861b35253bc533a9ff99846"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Mar 19 13:03:20 2025 +0000"
      },
      "committer": {
        "name": "Vladimír Marko",
        "email": "vmarko@google.com",
        "time": "Thu Mar 20 07:00:16 2025 -0700"
      },
      "message": "Optimizing: Avoid unnecessary work in `LinearScan()`.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 181943478\nChange-Id: Ied16ee27a8c6576c72c8d3dffc4b8e82031a8a38\n"
    },
    {
      "commit": "b67aed38aae437ee6861b35253bc533a9ff99846",
      "tree": "073f72f498cb9e069bad40268e6022512d908a31",
      "parents": [
        "e966e271e8714558f7cda9ef1cb1500aa747f7ea"
      ],
      "author": {
        "name": "Roman Artemev",
        "email": "roman.artemev@syntacore.com",
        "time": "Thu Mar 06 09:05:16 2025 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Thu Mar 20 04:43:51 2025 -0700"
      },
      "message": "riscv64: Support RISC-V in JitLogger\n\nReturn correct constant value `EM_RISCV` for RISC-V to generate\nperf jit header\n\nTest: Compile.\nChange-Id: Ia92a656dd87e1a106c35564583e0600274233377\n"
    },
    {
      "commit": "e966e271e8714558f7cda9ef1cb1500aa747f7ea",
      "tree": "aff64b690eb0d2bcdeb48884f452c5c6b3eff4be",
      "parents": [
        "2fda8f36c8ccb34a49c31d76be4eaaa6d9d45760"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Mar 20 09:31:22 2025 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Thu Mar 20 04:25:34 2025 -0700"
      },
      "message": "Use a raw string in `run_test_build.py`.\n\nAvoid `SyntaxWarning: invalid escape sequence \u0027\\.\u0027`.\n\nTest: buildbot-build.sh --target\nBug: 399857401\nChange-Id: I616c41941545b7c8540d2d5ca3706cbc3ce1cb8a\n"
    },
    {
      "commit": "2fda8f36c8ccb34a49c31d76be4eaaa6d9d45760",
      "tree": "2af072e1dae120cf6b00d29deb54e0104c8d9b12",
      "parents": [
        "59aaec4d51436995ace22c4bd6f35ff7f6f8aaf4"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Jun 13 16:16:43 2024 +0200"
      },
      "committer": {
        "name": "Vladimír Marko",
        "email": "vmarko@google.com",
        "time": "Thu Mar 20 03:54:03 2025 -0700"
      },
      "message": "Fix LSE to track type conversions correctly.\n\nAdd a new state to LSE\u0027s `Value` class to mark loads that\ndepend on loop Phi placeholders but may require a type\nconversion. We store the load in the `Value` and use the\n`loads_requiring_loop_phi_[load-\u003eGetId()]-\u003evalue` to form\na singly-linked list leading to the actual Phi placeholder.\nDuring `LSEVisitor::ProcessLoadsRequiringLoopPhis()`, we may\nreplace these records, so a walk over the singly-linked list\nin that stage can terminate with a replacement instruction\ninstead of the loop Phi placeholder.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 341476044\nChange-Id: Id8f2edf4dfaa82dc3f25ddf47f3fe1da8f2fb3ea\n"
    },
    {
      "commit": "59aaec4d51436995ace22c4bd6f35ff7f6f8aaf4",
      "tree": "4241d68db637844d86522d0445813d711ff5e8a4",
      "parents": [
        "a23f36390858d148e7ab2cc8ff159b138946595e"
      ],
      "author": {
        "name": "Almaz Mingaleev",
        "email": "mingaleev@google.com",
        "time": "Tue Mar 11 03:24:14 2025 -0700"
      },
      "committer": {
        "name": "Almaz Mingaleev",
        "email": "mingaleev@google.com",
        "time": "Thu Mar 20 03:50:21 2025 -0700"
      },
      "message": "Revert^2 \"Call target method in accessor MHs when it is set.\"\n\nPrevious LUCI crashes were due to b/404465902, which was\nfixed in aosp/3551420.\n\nBug: 297147201\nTest: ART_HEAP_POISONING\u003dtrue art/test/testrunner/testrunner.py -b \\\n         --host --baseline --debug --gcstress --64\nTest: art/test/testrunner/testrunner.py -b \\\n         --host --baseline --debug --gcstress --64\n\nChange-Id: If93b9c6559ac8ddbc3211df1cbc4dec192cb054a\n"
    },
    {
      "commit": "a23f36390858d148e7ab2cc8ff159b138946595e",
      "tree": "2be8f62e606748df1f52eac728ed7f132482a723",
      "parents": [
        "5ce388aa5079c754838d4faf523eb30719073b88"
      ],
      "author": {
        "name": "Mythri Alle",
        "email": "mythria@google.com",
        "time": "Tue Feb 25 13:03:22 2025 +0000"
      },
      "committer": {
        "name": "Mythri Alle",
        "email": "mythria@google.com",
        "time": "Wed Mar 19 09:34:51 2025 -0700"
      },
      "message": "Disable 055-enum-performance on tradefed\n\n055-enum-performance is disabled when run via testrunner from a long\ntime. This test is timing sensitive and might fail on heavily loaded\nor slow systems. So disable this in tradefed runs as well.\n\nBug:394148480\n\nChange-Id: I30d552c020445aa283ead9b4537cc51b002f8d12\n"
    },
    {
      "commit": "5ce388aa5079c754838d4faf523eb30719073b88",
      "tree": "e99c0ed615662ba285194f55496accdcdba4c204",
      "parents": [
        "3d94fe6d114bac01f7957b248c363c9125fcf2d3"
      ],
      "author": {
        "name": "Almaz Mingaleev",
        "email": "mingaleev@google.com",
        "time": "Wed Mar 19 11:13:51 2025 +0000"
      },
      "committer": {
        "name": "Almaz Mingaleev",
        "email": "mingaleev@google.com",
        "time": "Wed Mar 19 07:49:34 2025 -0700"
      },
      "message": "Do not override register storing MethodType in invokeExact.\n\nAs it might be in a callee-saved register and also known by GC\nto have a reference.\n\narm64 and riscv are fine as they load MethodHandle\u0027s field into\na temp register and unpoison that register and not call site one.\n\nBug: 404465902\n\nTest: ART_HEAP_POISONING\u003dtrue art/test/testrunner/testrunner.py -b --host --optimizing --64\nTest: ART_HEAP_POISONING\u003dtrue art/test/testrunner/testrunner.py -b --host --optimizing --gcstress --64\nTest: art/test/testrunner/testrunner.py -b --host --optimizing --64\nTest: art/test/testrunner/testrunner.py -b --host --optimizing --gcstress --64\n\nChange-Id: Ib1e80ee106a30b282f6bf2725c460f9c24d20c0e\n"
    },
    {
      "commit": "3d94fe6d114bac01f7957b248c363c9125fcf2d3",
      "tree": "24104d4f3f8029e7900f3da777ebc2f4974ad80c",
      "parents": [
        "8a23cf5602e5f7293111bec325df14eff39e2a04"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Feb 08 09:25:23 2024 +0000"
      },
      "committer": {
        "name": "Vladimír Marko",
        "email": "vmarko@google.com",
        "time": "Wed Mar 19 05:59:18 2025 -0700"
      },
      "message": "Introduce abstract instruction `HFieldAccess`.\n\nChange-Id: Iaccc3a000f53a4b7198a45f04142983897f194f4\n"
    },
    {
      "commit": "8a23cf5602e5f7293111bec325df14eff39e2a04",
      "tree": "2cac1cf4a7b765ea84b024816c6a12efa902877e",
      "parents": [
        "72810fa753e98c8347cfee63fb3bf43e4ebe2541"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 14 07:35:05 2025 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 19 05:26:23 2025 -0700"
      },
      "message": "Don\u0027t redefine MREMAP_DONTUNMAP.\n\nThis is in all our linux headers now.\n\nChange-Id: Ib88cdbf54883d3ad88dc4d61ee8c0583427a670d\n"
    },
    {
      "commit": "72810fa753e98c8347cfee63fb3bf43e4ebe2541",
      "tree": "58e2e4ab9d2f251a0a1ea95fad0a1a2ee4a0df4d",
      "parents": [
        "75cfb5844d61540495fa9a701b4e1db20e7515a0"
      ],
      "author": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Tue Mar 11 00:27:51 2025 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Tue Mar 18 14:21:55 2025 -0700"
      },
      "message": "Dump references when found invalid without type-of\n\nOnce we know that some reference in a given object is invalid, calling\nPrettyTypeOf() on all references is bound to fail. OTOH, it is useful to\nknow at what offset was a certain reference was. So dump that info for\nall references, without type-of, when an object is found to have invalid\nreferences in it.\n\nTest: art/test/testrunner/testrunner.py --host\nChange-Id: I898d86ad13e12545ad483f0c2e6de0c85cbf76f5\n"
    },
    {
      "commit": "75cfb5844d61540495fa9a701b4e1db20e7515a0",
      "tree": "f3cc7708abe69cb8baa0527114e0d5dd92fdf8f8",
      "parents": [
        "14c9edceee51cf1f4fb0b79b3f726e331051e673"
      ],
      "author": {
        "name": "Mythri Alle",
        "email": "mythria@google.com",
        "time": "Tue Mar 18 13:19:07 2025 +0000"
      },
      "committer": {
        "name": "Mythri Alle",
        "email": "mythria@google.com",
        "time": "Tue Mar 18 10:17:28 2025 -0700"
      },
      "message": "Fix iterating over long running method buffers when flushing\n\nWhen iterating over the long running buffers, we used to use unsigned\nindices and the way the loop was written it was expecting signed values.\nThe loop exit check expected -1 but for unsigned this doesn\u0027t work.\nFixed the check to not expect -1 and also used signed index.\n\nDrive-by-fix: Use correct type for unique_ptr.\n\nBug: 352518093\nTest: Manual test\nChange-Id: I8461919d7c20e3d76fa9e10783f8dd1f7ef950e0\n"
    },
    {
      "commit": "14c9edceee51cf1f4fb0b79b3f726e331051e673",
      "tree": "7372218e22d0ac688bc0fcf69df8a898704f0338",
      "parents": [
        "3210dddfbfa1baaf2bfae76b2f865d8073a77b3b"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Tue Mar 18 09:10:14 2025 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Tue Mar 18 09:49:50 2025 -0700"
      },
      "message": "Fix typo\n\nBug: 403048658\nTest: None\nChange-Id: I503289a3493b0fcec7c95b9535f4a9737056ed91\n"
    },
    {
      "commit": "3210dddfbfa1baaf2bfae76b2f865d8073a77b3b",
      "tree": "31f62bca6cd3221a454d9a0ce556063025c80abf",
      "parents": [
        "6cc70a4e8356a687851b0938252ff6b3249bf27b"
      ],
      "author": {
        "name": "Mythri Alle",
        "email": "mythria@google.com",
        "time": "Fri Mar 14 14:18:50 2025 +0000"
      },
      "committer": {
        "name": "Mythri Alle",
        "email": "mythria@google.com",
        "time": "Tue Mar 18 09:06:56 2025 -0700"
      },
      "message": "Increase the threshold for long running methods\n\nBug: 352518093\nTest: Manual testing\nChange-Id: Ic19bc41062ea79e4d9de641fcc63a45233ca955b\n"
    },
    {
      "commit": "6cc70a4e8356a687851b0938252ff6b3249bf27b",
      "tree": "e21236ab15685cce20d4f87958b6c1c945762fa3",
      "parents": [
        "c1816716591e657ffc65436834208fe02330592f"
      ],
      "author": {
        "name": "Mythri Alle",
        "email": "mythria@google.com",
        "time": "Tue Mar 11 05:25:00 2025 -0700"
      },
      "committer": {
        "name": "Mythri Alle",
        "email": "mythria@google.com",
        "time": "Tue Mar 18 08:18:52 2025 -0700"
      },
      "message": "Revert^4 \"Use nanoseconds for v2 method tracing\"\n\nThis reverts commit 02a80d00ffd5eaa1985e18becd542579576720fc.\n\nReason for revert: Fix dump_trace.cc to parse timestamps as 64-bit unsigned lebs and not 32-bit. These were always 64-bit fields but the bug didn\u0027t impact because timestamp diff did fit in 32-bits.\nWhen using ns, it no longer fits exposing the bug.\n\nChange-Id: If979c0bf891ae5bd0fdf278915fcda8ed09bfa9f\n"
    },
    {
      "commit": "c1816716591e657ffc65436834208fe02330592f",
      "tree": "6701d1e8230499f137e71ba49427fa76cfedb7d6",
      "parents": [
        "1abd2dcf05420499e95d91ed83d4c8de4a6c4c0d"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Mon Mar 17 16:36:03 2025 +0000"
      },
      "committer": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Tue Mar 18 06:20:52 2025 -0700"
      },
      "message": "Fix StackWalker implementation with Proxy methods\n\nBug: 404180956\nTest: atest CtsLibcoreOjTestCases:test.java.lang\nChange-Id: I08325053c703743bd7fd2b3ba46a3f0b47bbe85a\n"
    },
    {
      "commit": "1abd2dcf05420499e95d91ed83d4c8de4a6c4c0d",
      "tree": "65b91b2ccd3bf518033aea1b82a65d8c08585a2a",
      "parents": [
        "0d81e9de89e5605e8bd2e58bdac38b9b834960d5"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Mar 13 11:52:32 2025 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 18 05:35:47 2025 -0700"
      },
      "message": "Remove workaround for arm32 Linux 3.4 kernels.\n\nKernels that old are well outside the support window.\n\nChange-Id: Iecebd670ac43e81fc7a1757d46c07b05b412ccd9\n"
    },
    {
      "commit": "0d81e9de89e5605e8bd2e58bdac38b9b834960d5",
      "tree": "0cdf4a7c5f1fbbf8323fb52d2d4c7f47173262da",
      "parents": [
        "5b8e94a0006aeee9de3e229291b28a2b19878492"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 11 08:17:48 2025 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 18 05:14:47 2025 -0700"
      },
      "message": "libartbase (utils.cc): remove unused includes.\n\nmembarrier(2) support was pulled into its own file.\n\nChange-Id: Id5259b2675abecede57b1c4bd4050494771fc38a\n"
    },
    {
      "commit": "5b8e94a0006aeee9de3e229291b28a2b19878492",
      "tree": "6a1ac04da69bd42298a9aaba6243382595115b55",
      "parents": [
        "894b32807aa9b1b07ac0eb2a11901e24d0c72fc7"
      ],
      "author": {
        "name": "Chris Jones",
        "email": "christopher.jones@arm.com",
        "time": "Thu Feb 13 10:24:51 2025 +0000"
      },
      "committer": {
        "name": "Ulya Trofimovich",
        "email": "skvadrik@google.com",
        "time": "Tue Mar 18 02:54:55 2025 -0700"
      },
      "message": "Update VIXL simulator features\n\nWith the recent update to VIXL new features were introduced to the\nsimulator such as the guarded control stack (GCS) and a debugger.\n\n- GCS is not currently supported in ART, so disable any checks made by\n  the simulator.\n\n- The debugger should be disabled by default however add a hardcoded\n  flag to enable it if debugging is necessary. This is not anticipated\n  to be used until the more advanced ART simulator is available.\n\nTest: test.py --host --gtest\nChange-Id: I24f806f3d61a361275f7fb16d582972596324cd4\n"
    },
    {
      "commit": "894b32807aa9b1b07ac0eb2a11901e24d0c72fc7",
      "tree": "b57d73a62eae51d60b986cab9382f23c590ddd09",
      "parents": [
        "f6359f8f6ab70f02371eccbf653b0bac7a48b160"
      ],
      "author": {
        "name": "Chris Jones",
        "email": "christopher.jones@arm.com",
        "time": "Mon Feb 10 17:45:28 2025 +0000"
      },
      "committer": {
        "name": "Ulya Trofimovich",
        "email": "skvadrik@google.com",
        "time": "Tue Mar 18 02:54:38 2025 -0700"
      },
      "message": "Re-enable warnings for VIXL\n\nSome build warnings were previously disabled for VIXL. These have now\nbeen fixed so the warnings can be re-enabled.\n\nTest: test.py --host --target\nChange-Id: I6c3a88c9afceee6751bfa89f0e897dd971971e55\n"
    },
    {
      "commit": "f6359f8f6ab70f02371eccbf653b0bac7a48b160",
      "tree": "8098aee23eaeaa4a85776910cfe420f2cae86680",
      "parents": [
        "76d4111105ec64a9c84daff524d86e93baa901a9"
      ],
      "author": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Mon Mar 03 18:08:19 2025 +0000"
      },
      "committer": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Mon Mar 17 21:25:34 2025 -0700"
      },
      "message": "Clear thread-local interpreter cache, instead of sweeping it\n\nSweeping interpreter cache involves fetching opcode from dex-file which\ncan incur significant I/O.\n\nBug: 380438611\nBug: 398909819\nTest: manual\nChange-Id: Ief38482a5bea7a010e47a1833ffd7731e20242dd\n"
    },
    {
      "commit": "76d4111105ec64a9c84daff524d86e93baa901a9",
      "tree": "a775151a2a53e82c266d01e6560d0043cea27242",
      "parents": [
        "ce4b13518c4dab3470fa698c0c56723266ab3f2f"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Mon Mar 17 13:43:00 2025 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Mon Mar 17 13:54:05 2025 -0700"
      },
      "message": "Clarify native memory computation\n\nTest: lowdown -t term\nBug: 403048658\nChange-Id: I5ffbffeff2836d441e28cb627713b81032def4ef\n"
    },
    {
      "commit": "ce4b13518c4dab3470fa698c0c56723266ab3f2f",
      "tree": "4cc99a990d7a58d6bcade745fa5c5ff19fa06e68",
      "parents": [
        "49189d0836f45cc2115ca57c0cf2a471706ed231"
      ],
      "author": {
        "name": "Gurpreet Singh",
        "email": "gurpreetgs@google.com",
        "time": "Mon Mar 17 13:37:35 2025 +0000"
      },
      "committer": {
        "name": "Gurpreet Singh",
        "email": "gurpreetgs@google.com",
        "time": "Mon Mar 17 09:25:44 2025 -0700"
      },
      "message": "Remove min_sdk_verison property\n\nr-launched-apex-module already sets the min_sdk_version value, hence\nthere is no need to override it.\n\nChanging apex defaults from s-launched-apex-module to r-launched-apex module as statsd was launched in r, which keeps min_sdk_version to 30.\n\nIt does remove compressible:true property, but as discussed in the comments, it is fine as this is just a fake of statsd.\n\nFlag: EXEMPT removing overriding property is not flagged\nBug: 361092707\nTest: m art_fake_com.android.os.statsd\nChange-Id: Iee5e64561d491104c976d2ee7bf804d72c671299\n"
    },
    {
      "commit": "49189d0836f45cc2115ca57c0cf2a471706ed231",
      "tree": "342c983000ed3f833a2eaff7e9941b3d50228c2b",
      "parents": [
        "38a1949da3b69443cf1d88b3dedaccc7c5fe2c90"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Mar 11 02:36:54 2025 -0700"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 17 03:22:31 2025 -0700"
      },
      "message": "Reland \"Implement if instructions in fast baseline compiler.\"\n\nThis reverts commit ee8ab3125768bbf60347c507103a910553acd158.\n\nReason for revert: Fix logic around branching.\n\nChange-Id: Ifadcb75488fe25dd612451c5813ea797b9da3b5c\n"
    },
    {
      "commit": "38a1949da3b69443cf1d88b3dedaccc7c5fe2c90",
      "tree": "892fb1e4065cf87474b85743cba75110d181cf30",
      "parents": [
        "e5d43edd02f7a16e3de1c3aca7bbc6bdd52b318b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 14 10:19:04 2025 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 14 16:13:18 2025 -0700"
      },
      "message": "IsSealFutureWriteSupported isn\u0027t bionic-specific.\n\nThis was a workaround for \"our ancient glibc headers are out of date\", but I\u0027ve modernized the relevant ones so this should just work on the host now too.\n\nChange-Id: Ie32c22a2e4707c0ba91e082b6743dd3c2d338859\n"
    },
    {
      "commit": "e5d43edd02f7a16e3de1c3aca7bbc6bdd52b318b",
      "tree": "ee7abfe6e10fae01d54f79796a8aa3e3d852c3da",
      "parents": [
        "5a4fec7e90ad9c356d7822674ce1b4fadb339d82"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 14 10:43:38 2025 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri Mar 14 12:20:54 2025 -0700"
      },
      "message": "membarrier.cc: fix sense of kernel version test.\n\nAlso remove the obsolete workaround for old OS versions that made it non-obvious that the test was the wrong way round.\n\nChange-Id: Ibcc553c381b067db389ce449e29b3958d9bca0ae\n"
    },
    {
      "commit": "5a4fec7e90ad9c356d7822674ce1b4fadb339d82",
      "tree": "3616b54b4ae611f0f0f90060e266e91753b19c4a",
      "parents": [
        "ad0c8326a7012cd0eaf508ddc4afd1c1d2909efc"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 14 07:37:44 2025 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 14 12:19:39 2025 -0700"
      },
      "message": "Don\u0027t manually define syscall numbers.\n\nThere\u0027s no need, and they differ between architectures.\n\nChange-Id: Ie449bbde6179700a965dc9d2c8e4f1574db76cfc\n"
    },
    {
      "commit": "ad0c8326a7012cd0eaf508ddc4afd1c1d2909efc",
      "tree": "aed07d8fe6f95c7eebca5e5920dd5d5d07622ee6",
      "parents": [
        "2c0dfe5c2e683c2832c9dbac816cc75452a91436"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 14 07:40:07 2025 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 14 07:40:07 2025 -0700"
      },
      "message": "All the constants are now available on glibc too.\n\nChange-Id: Ia584ed390f5cf69899cb5c90cfa303414ac58624\n"
    },
    {
      "commit": "2c0dfe5c2e683c2832c9dbac816cc75452a91436",
      "tree": "be2ecc6d0795de0a63fbd0805db6cba12f3c6bc4",
      "parents": [
        "f1c6babf2197e233a929d94a9dcd4a403ab4eb7c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Mar 13 11:55:55 2025 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 14 05:29:55 2025 -0700"
      },
      "message": "membarrier.cc: reuse IsKernelVersionAtLeast().\n\nNo need to duplicate that code here.\n\nChange-Id: I6638dc0ad975c7221ae86711df46d3d41e2ded1f\n"
    },
    {
      "commit": "f1c6babf2197e233a929d94a9dcd4a403ab4eb7c",
      "tree": "40183545da2433986993d37470b53acb05fb107c",
      "parents": [
        "f3f82a4466bd377ca702982401f9dc8916fbb4ed"
      ],
      "author": {
        "name": "Stefano Cianciulli",
        "email": "scianciulli@google.com",
        "time": "Wed Mar 12 07:35:24 2025 -0700"
      },
      "committer": {
        "name": "Stefano Cianciulli",
        "email": "scianciulli@google.com",
        "time": "Fri Mar 14 01:26:35 2025 -0700"
      },
      "message": "Change allocations from strings to object arrays in HeapTest#GCMetrics\n\nThis test is occasionally failing because the slow path duration for either the full heap or the young generation is shorter than one millisecond.\n\nChanging the allocations from string to object arrays should help making the duration consistently over one millisecond and the test less flaky.\n\nBug: 271990567\nTest: atest art_standalone_runtime_tests\nChange-Id: I7a6463716ad3540a7fab58544c3e176003f6e0ed\n"
    },
    {
      "commit": "f3f82a4466bd377ca702982401f9dc8916fbb4ed",
      "tree": "ea12eccd4e78dbdf508a5c67bf2ff1db48f7a2ea",
      "parents": [
        "fc2f6b36c4d23dc70e1b7c2122890bb8ecc9c834"
      ],
      "author": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Fri Mar 14 02:00:55 2025 +0000"
      },
      "committer": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Thu Mar 13 22:28:06 2025 -0700"
      },
      "message": "Call ProcessMarkStack() after each category of GC-root is visited\n\nThis along with symbolized stack-trace will help in identifying\nsource of the object sub-graph which causes memory corruption.\n\nTest: art/test/testrunner/testrunner.py --host\nChange-Id: I3a733065099dace19f7b02f7becf326dcdac9af3\n"
    },
    {
      "commit": "fc2f6b36c4d23dc70e1b7c2122890bb8ecc9c834",
      "tree": "639a054676bf590a176676f3fc209e33735715ea",
      "parents": [
        "0f6a15bb17d2341106523b469743b659209a02b0"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Mar 13 09:33:41 2025 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Thu Mar 13 11:20:51 2025 -0700"
      },
      "message": "Revert \"Enforce core platform hiddenapi checks for Baklava (reland).\"\n\nThis reverts https://r.android.com/3525551, except the updated exemptions for https://r.android.com/3057322 are left in.\n\nReason for revert: App compat issue: b/402309958\n\nBug: 402309958\nBug: 377676642\nChange-Id: Ib243162484a9428ea646a356cecec3e3f298d531\n"
    },
    {
      "commit": "0f6a15bb17d2341106523b469743b659209a02b0",
      "tree": "38ac1211b412f0559a5f93d412b87f66142c95b7",
      "parents": [
        "6654a2743fdf4d21a75ce1082413efbf75abac70"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Feb 07 14:37:03 2025 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Mar 13 09:04:59 2025 -0700"
      },
      "message": "Clean up code that invalidated vdex files containing cdex.\n\nMostly reverts https://r.android.com/2587148.\n\nTest: m\nBug: 325430813\nChange-Id: Id7a0952d0ea83ff69fbd031d1be636e75d4d2d47\n"
    },
    {
      "commit": "6654a2743fdf4d21a75ce1082413efbf75abac70",
      "tree": "8a429a0e5727d90b2986d66d5f9e93aa5554262a",
      "parents": [
        "559dc0868345d955d3801a7acfa206f35343acdf"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 11 08:25:18 2025 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 12 05:50:52 2025 -0700"
      },
      "message": "1963-add-to-dex-classloader-in-memory: remove workaround.\n\nThe need for a memfd_create() workaround is gone.\n\nChange-Id: I07e46fc92d99b57dcb4bdc88deb8d11297c43279\n"
    },
    {
      "commit": "559dc0868345d955d3801a7acfa206f35343acdf",
      "tree": "8155c577093b44f2a14527ba8e3b55bc76c14c18",
      "parents": [
        "148a9d7dd69915a9d4ca8ee68d875f8b53b5fe67"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Tue Mar 11 18:20:36 2025 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Wed Mar 12 03:50:30 2025 -0700"
      },
      "message": "Fix string truncation for oat key value store.\n\nThe truncation was wrong. The length was mistakenly passed as the start\nposition. When adding a field that is longer than 2x the length limit,\nthe truncated string exceeds the length limit and causes memory\ncorruption.\n\nBug: 377474232\nTest: Run dex2oat with a commandline longer than 4KB (2x the length\n  limit), see no crash.\nChange-Id: I2307e9a015082f0eec013020d3ad2b08bc1999d4\n"
    },
    {
      "commit": "148a9d7dd69915a9d4ca8ee68d875f8b53b5fe67",
      "tree": "0aee2eafa64e2f7ce188674081750134966f9af2",
      "parents": [
        "11a5d95861c061ca65ecbf28597e2176a5448c8b"
      ],
      "author": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Tue Mar 11 21:22:35 2025 +0000"
      },
      "committer": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Tue Mar 11 16:30:55 2025 -0700"
      },
      "message": "Disable post-GC verifications for non-debug builds\n\nBug: 397381582\nBug: 343220989\nTest: ATP test infra\nChange-Id: I9cd8c7b88ce430994b067d53b73ed46c7091c2d2\n"
    },
    {
      "commit": "11a5d95861c061ca65ecbf28597e2176a5448c8b",
      "tree": "62bfec0b42538cc36c78ed806e6f0d70532311eb",
      "parents": [
        "ca2362c05e2fc05f9211e39ecb74857195b27780"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Tue Mar 11 14:39:13 2025 +0000"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Tue Mar 11 11:10:41 2025 -0700"
      },
      "message": "Fix --oat-location for mainline boot image extension.\n\ndex2oat uses the basename of the oat location to determine the soname of\nthe oat file in the ELF header.\n- If the output is specified by \"--oat-file\", dex2oat takes the oat\n  location from \"--oat-file\" and uses it as is.\n- If the output is specified by \"--oat-fd\", dex2oat takes the oat\n  location from \"--oat-location\", and for boot image extensions, dex2oat\n  expends the oat location with the name of the first input dex file.\n\nFor the mainline boot image extension specifically, before this change,\nodrefresh passes\n\"--oat-location\u003d/data/misc/.../boot-framework-adservices.oat\", so\ndex2oat expends it to\n\"boot-framework-adservices-framework-adservices.oat\".\n\nThis is unexpected, and it causes a discrepancy between odrefresh and\nCloud Compilation. Cloud Compilation is typically performed on host,\nwith the output specified by \"--oat-file\", so the soname of the mainline\nboot image extension is \"boot-framework-adservices.oat\". This\ndiscrepancy causes all the offsets in the oat file to differ.\n\nAfter this change, odrefresh passes\n\"--oat-location\u003d/data/misc/.../boot.oat\", so the soname after expansion\nis \"boot-framework-adservices.oat\", which is correct.\n\nBug: 372868052\nTest: Generate a mainline boot image extension on host. See the checksum\n  being identical to the one on device.\nChange-Id: I9bfd165a9505e889c3da7d4bc408f9a4f2e52714\n"
    },
    {
      "commit": "ca2362c05e2fc05f9211e39ecb74857195b27780",
      "tree": "36152bc873f94721ceadb803a329cd64dfb41910",
      "parents": [
        "4370b86853f0fdf16f0e957365c6b600e5b32fe2"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 10 06:39:58 2025 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 11 08:00:06 2025 -0700"
      },
      "message": "Remove memfd_create_compat().\n\nMultiple places were already unconditionally calling memfd_create(), and ART no longer runs tests on fugu (whose ancient kernel didn\u0027t have memfd_create()).\n\nChange-Id: I8ca96d75a9e6f4fe5395b210f60d9920808bb26c\n"
    },
    {
      "commit": "4370b86853f0fdf16f0e957365c6b600e5b32fe2",
      "tree": "a9e3bc73df56cf8f9270b56688ede9d0ac06417e",
      "parents": [
        "a6a75dba00303a88642a1c57ad2ed390797adf47"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Mar 07 17:13:16 2025 +0000"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Tue Mar 11 06:45:45 2025 -0700"
      },
      "message": "Ensure oat checksum determinism across hosts and devices.\n\nFor Cloud Compilation, we need to enable hosts to generate a boot image\nthat has exactly the same checksum as generated on device. In other\nwords, we need to make the oat checksum deterministic across hosts and\ndevices.\n\nTo achieve that, when writing the oat header, the non-deterministic\nfields are padded to their length limits and excluded from the oat\nchecksum computation.\n\nBug: 372868052\nTest: m test-art-host-gtest\nTest: Generate a boot image on host. See the checksum being identical to\n  the one on device.\nChange-Id: I9f73a28b349b673c25909b61a0c7ae8cf883c014\n"
    },
    {
      "commit": "a6a75dba00303a88642a1c57ad2ed390797adf47",
      "tree": "dd5f1d90603c59d953dd58a7aa9fe281ed7c56c0",
      "parents": [
        "4b88637ae7a8fa459bcd3a22452770ec4858772f"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Mon Mar 03 22:45:53 2025 +0000"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Tue Mar 11 06:45:45 2025 -0700"
      },
      "message": "Remove SDM status from dump.\n\nThe SDM status has two fields: sdm-status and sdm-signature.\n\nsdm-status can actually be inferred from the compiler filter and the\ncompilation reason, as SDM files should contain special compilation\nreasons.\n\nsdm-signature is no longer necessary after we added install-time check\non SDM files, making SDM files with the wrong signature rejected.\n\nThis change essentially reverts https://r.android.com/3342909.\n\nBug: 377474232\nTest: atest ArtServiceTests\nChange-Id: I079f21715afd4039bb801d3c8b79ec8a49b3c687\n"
    },
    {
      "commit": "4b88637ae7a8fa459bcd3a22452770ec4858772f",
      "tree": "6fffb584a200fe85ced3f1dbd623b6433f294881",
      "parents": [
        "7e0bfd62fa99fa13156bebeb0c72247954ae31fd"
      ],
      "author": {
        "name": "Mythri Alle",
        "email": "mythria@google.com",
        "time": "Tue Mar 04 13:53:38 2025 +0000"
      },
      "committer": {
        "name": "Mythri Alle",
        "email": "mythria@google.com",
        "time": "Tue Mar 11 06:31:45 2025 -0700"
      },
      "message": "Add a parser for processing long running method traces\n\nBug: 352518093\nTest: Manual testing\nChange-Id: Ic16b9a571cfe18dc3291f7e6aaa8b72e50b91e01\n"
    },
    {
      "commit": "7e0bfd62fa99fa13156bebeb0c72247954ae31fd",
      "tree": "d4e7cca26c28a651091bb56ea2371156ed1ee44d",
      "parents": [
        "71fcdfac2ffde37e60f12dc4e07ad56cd8344614"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 10 23:17:43 2025 -0700"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Mar 11 02:34:55 2025 -0700"
      },
      "message": "Revert \"Pass the dex register array to NterpGetInstanceField.\"\n\nThis reverts commit 0237ac82184e8123dcb24151e273a63a514a3283.\n\nReason for revert: b/402253994\n\nChange-Id: I78da473f76753899956cbee2e8d228ca54b34d85\n"
    },
    {
      "commit": "71fcdfac2ffde37e60f12dc4e07ad56cd8344614",
      "tree": "47930a1642e5b296d8a5b179f550fc4ddafadc6b",
      "parents": [
        "1cdb151ce10e05140f59e184d3dc8896d3ec8434"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 10 06:32:05 2025 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 10 12:07:52 2025 -0700"
      },
      "message": "Test1963: remove unnecessary JNI.\n\nOther CTS tests already require a working memfd_create(), and ART is no longer running tests locally on fugu (whose ancient kernel didn\u0027t support memfd_create()).\n\nChange-Id: If442de7f62a3b2a38206223f15fdb2f62429523d\n"
    },
    {
      "commit": "1cdb151ce10e05140f59e184d3dc8896d3ec8434",
      "tree": "605a5be2de1a34488e852e3e94dfee1e979f76d9",
      "parents": [
        "0237ac82184e8123dcb24151e273a63a514a3283"
      ],
      "author": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Sun Mar 09 08:47:14 2025 +0000"
      },
      "committer": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Mon Mar 10 12:02:21 2025 -0700"
      },
      "message": "Ensure for any object in old-gen its class is also in there\n\nLike in black-dense case, during young collections also we need to make\nsure that for any object in old-gen, its class is also in old-gen.\nOtherwise, we run the risk that if some first-object of a page in\nold-gen has its class pointer updated, then we\u0027d be reading wrong data\nfrom the class object.\n\nBug: 343220989\nBug: 401488879\nTest: ATP test infra\nChange-Id: I518dd732ab3e2ccb91bf5b5578474ebf90665f81\n"
    },
    {
      "commit": "0237ac82184e8123dcb24151e273a63a514a3283",
      "tree": "032dcb281dca5e01671e02bfbec51122b6f2aa94",
      "parents": [
        "2a5d4b397a0924b93c66e1f6c6c5ff7239a2488b"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sat Mar 01 01:26:25 2025 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 10 11:19:50 2025 -0700"
      },
      "message": "Pass the dex register array to NterpGetInstanceField.\n\nTo lookup the field in the holder\u0027s class. This reduces by half the\nnumber of slow lookups.\n\nAlso do a dex cache lookup in the fast path. This reduces by 10% the\nnumber of slow lookups.\n\nTest: test.py\nChange-Id: If9ae991a4e5b82e45ea961b9a777be9f4dc6df2d\n"
    },
    {
      "commit": "2a5d4b397a0924b93c66e1f6c6c5ff7239a2488b",
      "tree": "ff7dc25eb0f102a4aa2a05473702ce72e2ce48d8",
      "parents": [
        "336a1845af10f9f3ad7c9f7f8e1ae21bb7a03cd5"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 10 06:26:54 2025 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 10 09:47:54 2025 -0700"
      },
      "message": "Os.memfd_create() now works on the host too.\n\nChange-Id: I7e4a72cbf9fa9abf2b1d53f50228daaa063a86ad\n"
    },
    {
      "commit": "336a1845af10f9f3ad7c9f7f8e1ae21bb7a03cd5",
      "tree": "021ed3415ad8b8535a3b356f088f0d37944b386a",
      "parents": [
        "ee8ab3125768bbf60347c507103a910553acd158"
      ],
      "author": {
        "name": "Almaz Mingaleev",
        "email": "mingaleev@google.com",
        "time": "Mon Mar 10 07:49:20 2025 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Mon Mar 10 09:26:04 2025 -0700"
      },
      "message": "Revert \"Call target method in accessor MHs when it is set.\"\n\nRevert submission 3382609-target-accessors\n\nReason for revert: x86.poison.64 failures on LUCI  \n\nReverted changes: /q/submissionid:3382609-target-accessors\n\nChange-Id: I384945809bc18ac4dfc937af088c7dbe30ac5c5c\n"
    },
    {
      "commit": "ee8ab3125768bbf60347c507103a910553acd158",
      "tree": "2a38519759264194eeee3bed3ede37f45bccb23a",
      "parents": [
        "1e7f64367f8e396391d52fe037e662c8b08c80cd"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 10 07:07:29 2025 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Mon Mar 10 08:27:25 2025 -0700"
      },
      "message": "Revert \"Implement if instructions in fast baseline compiler.\"\n\nThis reverts commit 31308e27c488a857d950c47148cdf783ea3a8447.\n\nReason for revert: Though the code is flagged, potential regression in b/400516671\n\nChange-Id: I8709ea1cbbd3ec59a9f6f8a6e79c28939d6566f5\n"
    },
    {
      "commit": "1e7f64367f8e396391d52fe037e662c8b08c80cd",
      "tree": "e1310d5174e186b08523791f3e783375a1aef779",
      "parents": [
        "e8b13bcd702c20176dd8acfab6f130f0d9eec736"
      ],
      "author": {
        "name": "Dmitrii Ishcheikin",
        "email": "ishcheikin@google.com",
        "time": "Tue Mar 04 16:56:31 2025 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Mon Mar 10 07:50:14 2025 -0700"
      },
      "message": "Add find_unshared_pages tool\n\nThe tool goes through all memory maps of two processes and finds pages\nthat have equal contents but are not shared.\n\nTest: find_unshared_pages --pid1\u003d$(pidof system_server) --pid2\u003d$(pidof com.android.camera2)\nChange-Id: I1c5bbb18c9854c13f6112a87dbea2d806421d2bb\n"
    },
    {
      "commit": "e8b13bcd702c20176dd8acfab6f130f0d9eec736",
      "tree": "cefa771f11147c5f05d8952433adb2a391822cb2",
      "parents": [
        "9bd42a6df3e8c88e085745db5c377560ba31a00d",
        "629bb664e436ffb1c0519aaba9f00d31d219f4e5"
      ],
      "author": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Fri Mar 07 16:04:03 2025 -0800"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Mar 07 16:04:03 2025 -0800"
      },
      "message": "Improve log message when invalid reference is found post GC am: 629bb664e4\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/3530886\n\nChange-Id: I2ed5facac2ee234276160f424e6a914be7d4a550\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "629bb664e436ffb1c0519aaba9f00d31d219f4e5",
      "tree": "cefa771f11147c5f05d8952433adb2a391822cb2",
      "parents": [
        "3e768b62a0051ee331a00e874cafed81bc6a57be"
      ],
      "author": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Fri Mar 07 20:07:24 2025 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri Mar 07 15:30:50 2025 -0800"
      },
      "message": "Improve log message when invalid reference is found post GC\n\nPrint invalid references to see which portion of the heap they map to.\nAlso, print the corresponding card\u0027s value.\n\nBug: 400551293\nBug: 343220989\nTest: ATP test-infra\nChange-Id: I63abf614871c14cf953ddb8dbf43aa634198ff75\n"
    },
    {
      "commit": "9bd42a6df3e8c88e085745db5c377560ba31a00d",
      "tree": "9ee158787e07a1db69225c09c01129d00028dc3f",
      "parents": [
        "59e50b8f428d47bdcc84e46401d963ccc25a4c58",
        "3e768b62a0051ee331a00e874cafed81bc6a57be"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 07 06:04:38 2025 -0800"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Mar 07 06:04:38 2025 -0800"
      },
      "message": "Remove fugu workarounds from run-libcore-tests.py. am: 3e768b62a0\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/3528254\n\nChange-Id: I82bb3866f9314bb3d17f4e00f21bebd60427a256\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "3e768b62a0051ee331a00e874cafed81bc6a57be",
      "tree": "9ee158787e07a1db69225c09c01129d00028dc3f",
      "parents": [
        "2505d2028afe36367c9cfaff3ec5810658129a83"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Mar 06 11:54:54 2025 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 07 05:36:13 2025 -0800"
      },
      "message": "Remove fugu workarounds from run-libcore-tests.py.\n\nWe no longer have working fugu devices.\n\nChange-Id: I9cc60017027dd49cfa267c5bab95108217e8a1fd\n"
    },
    {
      "commit": "59e50b8f428d47bdcc84e46401d963ccc25a4c58",
      "tree": "69bb52c839bf6cf261dfed2ec971c71733405e70",
      "parents": [
        "9f8ce788952f36cd138c5994613deb54854c8199",
        "2505d2028afe36367c9cfaff3ec5810658129a83"
      ],
      "author": {
        "name": "Stefano Cianciulli",
        "email": "scianciulli@google.com",
        "time": "Fri Mar 07 01:41:40 2025 -0800"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Mar 07 01:41:40 2025 -0800"
      },
      "message": "Initialize callback for pulled atoms after boot is complete am: 2505d2028a\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/3527594\n\nChange-Id: I4d520e6a80ea8ddd8c566de8eee6c193d4ead2c3\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "9f8ce788952f36cd138c5994613deb54854c8199",
      "tree": "f29105863a70804dd4806668e541b06783471428",
      "parents": [
        "d75809fe42cc7cb22db0a79f474d0130eec4ca42",
        "02a80d00ffd5eaa1985e18becd542579576720fc"
      ],
      "author": {
        "name": "Mythri Alle",
        "email": "mythria@google.com",
        "time": "Fri Mar 07 01:41:17 2025 -0800"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Mar 07 01:41:17 2025 -0800"
      },
      "message": "Revert^3 \"Use nanoseconds for v2 method tracing\" am: 02a80d00ff\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/3513631\n\nChange-Id: I5c01e57dab0af0c1b00fdb0ab411100670f0d3fa\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "2505d2028afe36367c9cfaff3ec5810658129a83",
      "tree": "69bb52c839bf6cf261dfed2ec971c71733405e70",
      "parents": [
        "02a80d00ffd5eaa1985e18becd542579576720fc"
      ],
      "author": {
        "name": "Stefano Cianciulli",
        "email": "scianciulli@google.com",
        "time": "Thu Mar 06 15:42:10 2025 +0000"
      },
      "committer": {
        "name": "Stefano Cianciulli",
        "email": "scianciulli@google.com",
        "time": "Fri Mar 07 01:40:19 2025 -0800"
      },
      "message": "Initialize callback for pulled atoms after boot is complete\n\nThe change introduced in this CL should help to register the callback\nfor pulling the ART_DEVICE_STATUS atoms after the boot sequence is\ncompleted, which should improve the situation we have now for which\n\u003e80% of devices are not able to correctly report this atom.\n\nBug: 257028435\nTest: atest art_standalone_runtime_tests\nTest: statsdrive 10205\nChange-Id: I4257273ce14e9eadebc3de2f2ef4ee7d21872fa6\n"
    }
  ],
  "next": "02a80d00ffd5eaa1985e18becd542579576720fc"
}
