< prev index next >
src/hotspot/share/classfile/systemDictionary.cpp
Print this page
*** 295,309 ****
k = SystemDictionary::resolve_instance_class_or_null(fd.object_key(),
class_loader,
protection_domain,
CHECK_NULL);
if (k != NULL) {
! k = k->array_klass(fd.dimension(), CHECK_NULL);
}
} else {
k = Universe::typeArrayKlassObj(t);
! k = TypeArrayKlass::cast(k)->array_klass(fd.dimension(), CHECK_NULL);
}
return k;
}
// Must be called for any super-class or super-interface resolution
--- 295,309 ----
k = SystemDictionary::resolve_instance_class_or_null(fd.object_key(),
class_loader,
protection_domain,
CHECK_NULL);
if (k != NULL) {
! k = k->array_klass(fd.storage_props(), fd.dimension(), CHECK_NULL);
}
} else {
k = Universe::typeArrayKlassObj(t);
! k = TypeArrayKlass::cast(k)->array_klass(fd.storage_props(), fd.dimension(), CHECK_NULL);
}
return k;
}
// Must be called for any super-class or super-interface resolution
*** 1026,1036 ****
k = Universe::typeArrayKlassObj(t);
} else {
k = SystemDictionary::find(fd.object_key(), class_loader, protection_domain, THREAD);
}
if (k != NULL) {
! k = k->array_klass_or_null(fd.dimension());
}
} else {
k = find(class_name, class_loader, protection_domain, THREAD);
}
return k;
--- 1026,1036 ----
k = Universe::typeArrayKlassObj(t);
} else {
k = SystemDictionary::find(fd.object_key(), class_loader, protection_domain, THREAD);
}
if (k != NULL) {
! k = k->array_klass_or_null(fd.storage_props(), fd.dimension());
}
} else {
k = find(class_name, class_loader, protection_domain, THREAD);
}
return k;
*** 2263,2273 ****
MutexLocker mu(SystemDictionary_lock, THREAD);
klass = constraints()->find_constrained_klass(fd.object_key(), class_loader);
}
// If element class already loaded, allocate array klass
if (klass != NULL) {
! klass = klass->array_klass_or_null(fd.dimension());
}
} else {
MutexLocker mu(SystemDictionary_lock, THREAD);
// Non-array classes are easy: simply check the constraint table.
klass = constraints()->find_constrained_klass(class_name, class_loader);
--- 2263,2273 ----
MutexLocker mu(SystemDictionary_lock, THREAD);
klass = constraints()->find_constrained_klass(fd.object_key(), class_loader);
}
// If element class already loaded, allocate array klass
if (klass != NULL) {
! klass = klass->array_klass_or_null(fd.storage_props(), fd.dimension());
}
} else {
MutexLocker mu(SystemDictionary_lock, THREAD);
// Non-array classes are easy: simply check the constraint table.
klass = constraints()->find_constrained_klass(class_name, class_loader);
< prev index next >