< prev index next >

src/hotspot/share/memory/heapShared.cpp

Print this page
rev 51387 : 8209120: Archive the Integer.IntegerCache
Reviewed-by: jiangli, alanb, plevart, iklam, mchung


 493       Klass *orig_k = f->klass();
 494       subgraph_info->add_subgraph_object_klass(orig_k, relocated_k);
 495     } else {
 496       // The field contains null, we still need to record the entry point,
 497       // so it can be restored at runtime.
 498       subgraph_info->add_subgraph_entry_field(field_offset, NULL);
 499     }
 500   } else {
 501     ShouldNotReachHere();
 502   }
 503 }
 504 
 505 #define do_module_object_graph(archive_object_graph_do) \
 506   archive_object_graph_do(SystemDictionary::ArchivedModuleGraph_klass(), jdk_internal_module_ArchivedModuleGraph::archivedSystemModules_offset(), T_OBJECT, CHECK); \
 507   archive_object_graph_do(SystemDictionary::ArchivedModuleGraph_klass(), jdk_internal_module_ArchivedModuleGraph::archivedModuleFinder_offset(), T_OBJECT, CHECK); \
 508   archive_object_graph_do(SystemDictionary::ArchivedModuleGraph_klass(), jdk_internal_module_ArchivedModuleGraph::archivedMainModule_offset(), T_OBJECT, CHECK); \
 509   archive_object_graph_do(SystemDictionary::ArchivedModuleGraph_klass(), jdk_internal_module_ArchivedModuleGraph::archivedConfiguration_offset(), T_OBJECT, CHECK); \
 510   archive_object_graph_do(SystemDictionary::ImmutableCollections_ListN_klass(), java_util_ImmutableCollections_ListN::EMPTY_LIST_offset(), T_OBJECT, CHECK); \
 511   archive_object_graph_do(SystemDictionary::ImmutableCollections_MapN_klass(),  java_util_ImmutableCollections_MapN::EMPTY_MAP_offset(), T_OBJECT, CHECK); \
 512   archive_object_graph_do(SystemDictionary::ImmutableCollections_SetN_klass(),  java_util_ImmutableCollections_SetN::EMPTY_SET_offset(), T_OBJECT, CHECK); \

 513   archive_object_graph_do(SystemDictionary::Configuration_klass(),       java_lang_module_Configuration::EMPTY_CONFIGURATION_offset(), T_OBJECT, CHECK)
 514 
 515 void HeapShared::archive_module_graph_objects(Thread* THREAD) {
 516   do_module_object_graph(archive_reachable_objects_from_static_field);
 517 }
 518 #endif // INCLUDE_CDS_JAVA_HEAP


 493       Klass *orig_k = f->klass();
 494       subgraph_info->add_subgraph_object_klass(orig_k, relocated_k);
 495     } else {
 496       // The field contains null, we still need to record the entry point,
 497       // so it can be restored at runtime.
 498       subgraph_info->add_subgraph_entry_field(field_offset, NULL);
 499     }
 500   } else {
 501     ShouldNotReachHere();
 502   }
 503 }
 504 
 505 #define do_module_object_graph(archive_object_graph_do) \
 506   archive_object_graph_do(SystemDictionary::ArchivedModuleGraph_klass(), jdk_internal_module_ArchivedModuleGraph::archivedSystemModules_offset(), T_OBJECT, CHECK); \
 507   archive_object_graph_do(SystemDictionary::ArchivedModuleGraph_klass(), jdk_internal_module_ArchivedModuleGraph::archivedModuleFinder_offset(), T_OBJECT, CHECK); \
 508   archive_object_graph_do(SystemDictionary::ArchivedModuleGraph_klass(), jdk_internal_module_ArchivedModuleGraph::archivedMainModule_offset(), T_OBJECT, CHECK); \
 509   archive_object_graph_do(SystemDictionary::ArchivedModuleGraph_klass(), jdk_internal_module_ArchivedModuleGraph::archivedConfiguration_offset(), T_OBJECT, CHECK); \
 510   archive_object_graph_do(SystemDictionary::ImmutableCollections_ListN_klass(), java_util_ImmutableCollections_ListN::EMPTY_LIST_offset(), T_OBJECT, CHECK); \
 511   archive_object_graph_do(SystemDictionary::ImmutableCollections_MapN_klass(),  java_util_ImmutableCollections_MapN::EMPTY_MAP_offset(), T_OBJECT, CHECK); \
 512   archive_object_graph_do(SystemDictionary::ImmutableCollections_SetN_klass(),  java_util_ImmutableCollections_SetN::EMPTY_SET_offset(), T_OBJECT, CHECK); \
 513   archive_object_graph_do(SystemDictionary::Integer_IntegerCache_klass(), java_lang_Integer_IntegerCache::archivedCache_offset(), T_OBJECT, CHECK); \
 514   archive_object_graph_do(SystemDictionary::Configuration_klass(),       java_lang_module_Configuration::EMPTY_CONFIGURATION_offset(), T_OBJECT, CHECK)
 515 
 516 void HeapShared::archive_module_graph_objects(Thread* THREAD) {
 517   do_module_object_graph(archive_reachable_objects_from_static_field);
 518 }
 519 #endif // INCLUDE_CDS_JAVA_HEAP
< prev index next >