--- old/src/hotspot/share/classfile/systemDictionaryShared.cpp 2020-08-05 15:53:51.146266723 -0700 +++ new/src/hotspot/share/classfile/systemDictionaryShared.cpp 2020-08-05 15:53:50.790253322 -0700 @@ -1142,6 +1142,15 @@ return created; } +void SystemDictionaryShared::add_replaced_class(InstanceKlass* k, TRAPS) { + Arguments::assert_is_dumping_archive(); + assert(!k->is_loaded(), "Invariant"); + { + MutexLocker mu_r(THREAD, Compile_lock); // add_to_hierarchy asserts this. + SystemDictionary::add_to_hierarchy(k, CHECK); + } +} + // This function is called to resolve the super/interfaces of shared classes for // non-built-in loaders. E.g., ChildClass in the below example // where "super:" (and optionally "interface:") have been specified. @@ -1382,6 +1391,11 @@ _dumptime_table->update_counts(); } +void SystemDictionaryShared::set_excluded(InstanceKlass* k) { + Arguments::assert_is_dumping_archive(); + find_or_allocate_info_for(k)->set_excluded(); +} + bool SystemDictionaryShared::is_excluded_class(InstanceKlass* k) { assert(_no_class_loading_should_happen, "sanity"); Arguments::assert_is_dumping_archive();