RFR: 8269736: Optimize CDS PatchEmbeddedPointers::do_bit() [v3]
Ioi Lam
iklam at openjdk.org
Tue Dec 20 21:45:51 UTC 2022
On Tue, 20 Dec 2022 16:20:13 GMT, Matias Saavedra Silva <matsaave at openjdk.org> wrote:
>> The current implementation reads the narrow oop, decodes it using the "dump time" encoding, encodes it using "runtime" encoding, and then stores it back into the heap. In the cases where the dumptime and runtime shifts are equal, there is an opportunity to calculate the fixed distance between oops so they can be patched more optimally. Verified with tier 1, 2, and 4 tests.
>
> Matias Saavedra Silva has updated the pull request incrementally with two additional commits since the last revision:
>
> - Ashutosh comments
> - Fixed minimal and cross build
src/hotspot/share/cds/archiveHeapLoader.cpp line 161:
> 159: };
> 160:
> 161: void ArchiveHeapLoader::patch_compressed_pointers(BitMapView bm,
The change looks good overall, but I think `patch_compressed_pointers` should be renamed `patch_compressed_embedded_pointers` so that it's clear that this function is a subordinate of `patch_embedded_pointers`.
-------------
PR: https://git.openjdk.org/jdk/pull/10863
More information about the hotspot-runtime-dev
mailing list