RFR: 8311604: Simplify NOCOOPS requested addresses for archived heap objects [v2]

Ioi Lam iklam at openjdk.org
Fri Jul 7 17:12:09 UTC 2023


> This PR attempts to clean up some of the cruds in the existing code:
> 
> - Simplified the calculation of "requested address" when `UseCompressedOops` is disabled -- the archived heap objects are always written starting from 0x10000000
> - Removed `HeapShared::to_requested_address()` so we don't have two kinds of "requested address"
> - Updated the comments about "source" vs "buffered" vs "requested" addresses in archiveHeapWriter.hpp
> - Removed `SerializeClosure::oop()` as the only oop we need to store into the archive header is `HeapShared::roots()`, which can be handled more easily with `FileMapHeader::_heap_roots_offset`
> - Removed some unnecessary dependencies on `G1CollectedHeap::heap()->reserved()`
> 
> Also:
> - Moved SerializeClosure to its own header file to improve build time.
> - Fixed DeterministicDump.java, which wasn't archiving Java objects when  `UseCompressedOops` was disabled.

Ioi Lam has updated the pull request incrementally with one additional commit since the last revision:

  @ashu-mehra review; updated source code comments

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/14792/files
  - new: https://git.openjdk.org/jdk/pull/14792/files/88d2b338..fb8a2165

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=14792&range=01
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=14792&range=00-01

  Stats: 4 lines in 2 files changed: 1 ins; 0 del; 3 mod
  Patch: https://git.openjdk.org/jdk/pull/14792.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/14792/head:pull/14792

PR: https://git.openjdk.org/jdk/pull/14792


More information about the hotspot-dev mailing list