mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-27 14:54:52 +02:00
Merge
This commit is contained in:
commit
a8c5f1e59a
64 changed files with 1781 additions and 378 deletions
|
@ -4486,33 +4486,6 @@ void ClassFileParser::set_precomputed_flags(InstanceKlass* ik) {
|
|||
}
|
||||
}
|
||||
|
||||
// Attach super classes and interface classes to class loader data
|
||||
static void record_defined_class_dependencies(const InstanceKlass* defined_klass,
|
||||
TRAPS) {
|
||||
assert(defined_klass != NULL, "invariant");
|
||||
|
||||
ClassLoaderData* const defining_loader_data = defined_klass->class_loader_data();
|
||||
if (defining_loader_data->is_the_null_class_loader_data()) {
|
||||
// Dependencies to null class loader data are implicit.
|
||||
return;
|
||||
} else {
|
||||
// add super class dependency
|
||||
Klass* const super = defined_klass->super();
|
||||
if (super != NULL) {
|
||||
defining_loader_data->record_dependency(super);
|
||||
}
|
||||
|
||||
// add super interface dependencies
|
||||
const Array<InstanceKlass*>* const local_interfaces = defined_klass->local_interfaces();
|
||||
if (local_interfaces != NULL) {
|
||||
const int length = local_interfaces->length();
|
||||
for (int i = 0; i < length; i++) {
|
||||
defining_loader_data->record_dependency(local_interfaces->at(i));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// utility methods for appending an array with check for duplicates
|
||||
|
||||
static void append_interfaces(GrowableArray<InstanceKlass*>* result,
|
||||
|
@ -5719,9 +5692,6 @@ void ClassFileParser::fill_instance_klass(InstanceKlass* ik, bool changed_by_loa
|
|||
}
|
||||
}
|
||||
|
||||
// Update the loader_data graph.
|
||||
record_defined_class_dependencies(ik, CHECK);
|
||||
|
||||
ClassLoadingService::notify_class_loaded(ik, false /* not shared class */);
|
||||
|
||||
if (!is_internal()) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue