--- old/src/hotspot/share/memory/metaspaceShared.cpp 2018-06-11 16:16:20.730367742 -0400 +++ new/src/hotspot/share/memory/metaspaceShared.cpp 2018-06-11 16:16:20.410351117 -0400 @@ -1910,6 +1910,11 @@ return archived_oop; } +oop MetaspaceShared::unarchive_heap_object(oop obj) { + assert(obj != NULL, "sanity"); + return G1CollectedHeap::heap()->materialize_archived_object(obj); +} + void MetaspaceShared::archive_klass_objects(Thread* THREAD) { int i; for (i = 0; i < _global_klass_objects->length(); i++) { @@ -1980,7 +1985,7 @@ "Archived heap object is not allowed"); assert(MetaspaceShared::open_archive_heap_region_mapped(), "Open archive heap region is not mapped"); - RootAccess::oop_store(p, CompressedOops::decode_not_null(o)); + *p = CompressedOops::decode_not_null(o); } }