--- old/src/hotspot/share/classfile/javaClasses.cpp 2018-07-20 13:33:45.987660952 -0400 +++ new/src/hotspot/share/classfile/javaClasses.cpp 2018-07-20 13:33:44.623581636 -0400 @@ -4250,6 +4250,8 @@ int jdk_internal_module_ArchivedModuleGraph::_archivedSystemModules_offset; int jdk_internal_module_ArchivedModuleGraph::_archivedModuleFinder_offset; int jdk_internal_module_ArchivedModuleGraph::_archivedMainModule_offset; +int jdk_internal_module_ArchivedModuleGraph::_archivedConfiguration_offset; +int java_lang_module_Configuration::_EMPTY_CONFIGURATION_offset; #define STACKTRACEELEMENT_FIELDS_DO(macro) \ macro(declaringClassObject_offset, k, "declaringClassObject", class_signature, false); \ @@ -4412,20 +4414,36 @@ return (hardcoded_offset * heapOopSize) + instanceOopDesc::base_offset_in_bytes(); } -#define MODULEBOOTSTRAP_FIELDS_DO(macro) \ +#define ARCHIVEDMODULEGRAPH_FIELDS_DO(macro) \ macro(_archivedSystemModules_offset, k, "archivedSystemModules", systemModules_signature, true); \ macro(_archivedModuleFinder_offset, k, "archivedModuleFinder", moduleFinder_signature, true); \ - macro(_archivedMainModule_offset, k, "archivedMainModule", string_signature, true) + macro(_archivedMainModule_offset, k, "archivedMainModule", string_signature, true); \ + macro(_archivedConfiguration_offset, k, "archivedConfiguration", configuration_signature, true) void jdk_internal_module_ArchivedModuleGraph::compute_offsets() { InstanceKlass* k = SystemDictionary::ArchivedModuleGraph_klass(); assert(k != NULL, "must be loaded"); - MODULEBOOTSTRAP_FIELDS_DO(FIELD_COMPUTE_OFFSET); + ARCHIVEDMODULEGRAPH_FIELDS_DO(FIELD_COMPUTE_OFFSET); } #if INCLUDE_CDS void jdk_internal_module_ArchivedModuleGraph::serialize(SerializeClosure* f) { - MODULEBOOTSTRAP_FIELDS_DO(FIELD_SERIALIZE_OFFSET); + ARCHIVEDMODULEGRAPH_FIELDS_DO(FIELD_SERIALIZE_OFFSET); +} +#endif + +#define CONFIGURATION_FIELDS_DO(macro) \ + macro(_EMPTY_CONFIGURATION_offset, k, "EMPTY_CONFIGURATION", configuration_signature, true) + +void java_lang_module_Configuration::compute_offsets() { + InstanceKlass* k = SystemDictionary::Configuration_klass(); + assert(k != NULL, "must be loaded"); + CONFIGURATION_FIELDS_DO(FIELD_COMPUTE_OFFSET); +} + +#if INCLUDE_CDS +void java_lang_module_Configuration::serialize(SerializeClosure* f) { + CONFIGURATION_FIELDS_DO(FIELD_SERIALIZE_OFFSET); } #endif @@ -4487,6 +4505,7 @@ java_lang_LiveStackFrameInfo::compute_offsets(); java_util_concurrent_locks_AbstractOwnableSynchronizer::compute_offsets(); + java_lang_module_Configuration::compute_offsets(); jdk_internal_module_ArchivedModuleGraph::compute_offsets(); // generated interpreter code wants to know about the offsets we just computed: