8274858: Remove unused dictionary_classes_do functions

Reviewed-by: dholmes, hseigel
This commit is contained in:
Coleen Phillimore 2021-10-07 15:24:00 +00:00
parent 03a8d342b8
commit 4ab274ac1a
3 changed files with 13 additions and 30 deletions

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2018, 2020, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2018, 2021, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -426,21 +426,6 @@ void ClassLoaderDataGraph::classes_unloading_do(void f(Klass* const)) {
while (ClassLoaderData* X = iter.get_next()) \
if (X->dictionary() != NULL)
// Walk classes in the loaded class dictionaries in various forms.
// Only walks the classes defined in this class loader.
void ClassLoaderDataGraph::dictionary_classes_do(void f(InstanceKlass*)) {
FOR_ALL_DICTIONARY(cld) {
cld->dictionary()->classes_do(f);
}
}
// Only walks the classes defined in this class loader.
void ClassLoaderDataGraph::dictionary_classes_do(void f(InstanceKlass*, TRAPS), TRAPS) {
FOR_ALL_DICTIONARY(cld) {
cld->dictionary()->classes_do(f, CHECK);
}
}
void ClassLoaderDataGraph::verify_dictionary() {
FOR_ALL_DICTIONARY(cld) {
cld->dictionary()->verify();

View File

@ -96,13 +96,6 @@ class ClassLoaderDataGraph : public AllStatic {
// Called from VMOperation
static void walk_metadata_and_clean_metaspaces();
// dictionary do
// Iterate over all klasses in dictionary, but
// just the classes from defining class loaders.
static void dictionary_classes_do(void f(InstanceKlass*));
// Added for initialize_itable_for_klass to handle exceptions.
static void dictionary_classes_do(void f(InstanceKlass*, TRAPS), TRAPS);
// VM_CounterDecay iteration support
static InstanceKlass* try_get_next_class();
static void adjust_saved_class(ClassLoaderData* cld);

View File

@ -523,15 +523,20 @@ static void reinitialize_vtables() {
}
}
static void initialize_itable_for_klass(InstanceKlass* k) {
k->itable().initialize_itable();
}
static void reinitialize_itables() {
class ReinitTableClosure : public KlassClosure {
public:
void do_klass(Klass* k) {
if (k->is_instance_klass()) {
InstanceKlass::cast(k)->itable().initialize_itable();
}
}
};
MutexLocker mcld(ClassLoaderDataGraph_lock);
ClassLoaderDataGraph::dictionary_classes_do(initialize_itable_for_klass);
ReinitTableClosure cl;
ClassLoaderDataGraph::classes_do(&cl);
}