RFR: 8174986: CDS archived java heap region may not compatible with AOT
Ioi Lam
ioi.lam at oracle.com
Thu Oct 5 16:30:46 UTC 2017
Hi Jiangli:
The changes look good, and thank you for doing the clean up. I agree
that MetaspaceShared::initialize_runtime_shared_and_meta_spaces() is a
better location for this functionality that inside metaspace.cpp.
Just a small typo:
306 // Set narrow_klass_shift to be LogKlassAlignmentInBytes. This is
consisten
-> consistent
Thanks
- Ioi
On 10/4/17 4:12 PM, Jiangli Zhou wrote:
> Hi,
>
> Please review the following enhancement that always sets the narrow klass encoding shift to be LogKlassAlignmentInBytes when CDS is enabled. This is done so the archived java heap regions (the shared string space and adjustable archive heap space) can coexist with AOT code, because AOT uses LogKlassAlignmentInBytes for narrow klass encode shift when generating the precompiled code.
>
> I also took the opportunity to clean up Meatspace::global_initialize(). I moved the block of code that initializes the shared spaces and meatspace at CDS runtime into a new function, MetaspaceShared::initialize_runtime_shared_and_meta_spaces(). I also added more comments so it is easier to understand the logic.
>
> webrev: http://cr.openjdk.java.net/~jiangli/8174986/webrev.00/ <http://cr.openjdk.java.net/~jiangli/8174986/webrev.00/>
> RFE: https://bugs.openjdk.java.net/browse/JDK-8174986?filter=14921 <https://bugs.openjdk.java.net/browse/JDK-8174986?filter=14921>
>
> Tested with all CDS/AppCDS tests on linux x64.
>
> Thanks,
> Jiangli
More information about the hotspot-runtime-dev
mailing list