RFR:8206009: Move java heap object archiving code to heapShared.hpp and heapShared.cpp

coleen.phillimore at oracle.com coleen.phillimore at oracle.com
Thu Oct 4 21:48:42 UTC 2018


http://cr.openjdk.java.net/~jiangli/8206009/webrev.00/src/hotspot/share/memory/heapShared.hpp.udiff.html

+ static bool oop_equals(oop const& p1, oop const& p2) {
+ return p1 == p2;
+ }


You may need to use oopDesc::equals or the Access API to compare the 
oops to not run afoul of shenandoah here.  It's apparently not needed 
for the comparisons to zero that I also saw.

The separation looks really good!
Coleen


On 10/3/18 6:23 PM, Jiangli Zhou wrote:
> Please review the restructuring and cleanup of java heap object 
> archiving code. The java object archiving code has grown in the past 
> year and metaspaceShared.* files are not the suitable place. The 
> restructuring and cleanup include:
>
>   - Moved java heap object archiving implementation from 
> metaspaceShared.* to heapShared.*.
>   - Various is_archive_object() APIs are renamed to 
> is_archived_object() for naming consistency:
>      - Renamed MetaspaceShared::is_archive_object() to 
> HeapShared::is_archived_object().
>      - Renamed oopDesc::is_archive_object() to 
> oopDesc::is_archived_object().
>      - Renamed G1ArchiveAllocator::is_archive_object() to 
> G1ArchiveAllocator::is_archived_object().
>   - Changed to use G1ArchiveAllocator::is_archived_object() in 
> G1CollectedHeap::materialize_archived_object(). Removed #include 
> "memory/metaspaceShared.inline.hpp” from g1CollectedHeap.cpp.
>   - Renamed HeapShared::archive_static_fields() to 
> HeapShared::archive_object_subgraphs().
>
> webrev: http://cr.openjdk.java.net/~jiangli/8206009/webrev.00/
> RFE: https://bugs.openjdk.java.net/browse/JDK-8206009
>
> Tested with tier1-tier3. Tier4 and tier5 are in progress.
>
> Thanks,
>
> Jiangli
>
>
>
>



More information about the hotspot-runtime-dev mailing list