The beginning of the RW region contains pointers to c++ vtables which are always located at a fixed offset from the shared base address at runtime. This offset can be calculated at dumptime and stored with the read-only tables at the top of the RO region. As a further improvement, all the pointers to RO tables are replaced with offsets as well.
These changes will reduce the number of pointers in the RW and RO regions and will allow for the relocation bitmap size optimizations to be more effective. Verified with tier 1-5 tests. ------------- Commit messages: - Merge branch 'master' into pointer_to_offset_8329418 - Cleanup - Corrected SA - Editing SA - Fixed dynamic dumping - Now works with -Xshare:on - Adjusted serialization - Serializing offsets - 8329418: Replace pointers to tables with offsets in relocation bitmap Changes: https://git.openjdk.org/jdk/pull/19107/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=19107&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8329418 Stats: 121 lines in 8 files changed: 69 ins; 23 del; 29 mod Patch: https://git.openjdk.org/jdk/pull/19107.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/19107/head:pull/19107 PR: https://git.openjdk.org/jdk/pull/19107