< prev index next >
src/hotspot/share/oops/klass.cpp
Print this page
*** 629,661 ****
assert(DumpSharedSpaces, "called only during runtime");
_archived_mirror = CompressedOops::encode(m);
}
#endif // INCLUDE_CDS_JAVA_HEAP
! Klass* Klass::array_klass_or_null(int rank) {
EXCEPTION_MARK;
// No exception can be thrown by array_klass_impl when called with or_null == true.
// (In anycase, the execption mark will fail if it do so)
! return array_klass_impl(true, rank, THREAD);
}
! Klass* Klass::array_klass_or_null() {
EXCEPTION_MARK;
// No exception can be thrown by array_klass_impl when called with or_null == true.
// (In anycase, the execption mark will fail if it do so)
! return array_klass_impl(true, THREAD);
}
! Klass* Klass::array_klass_impl(bool or_null, int rank, TRAPS) {
fatal("array_klass should be dispatched to InstanceKlass, ObjArrayKlass or TypeArrayKlass");
return NULL;
}
! Klass* Klass::array_klass_impl(bool or_null, TRAPS) {
fatal("array_klass should be dispatched to InstanceKlass, ObjArrayKlass or TypeArrayKlass");
return NULL;
}
void Klass::check_array_allocation_length(int length, int max_length, TRAPS) {
--- 629,661 ----
assert(DumpSharedSpaces, "called only during runtime");
_archived_mirror = CompressedOops::encode(m);
}
#endif // INCLUDE_CDS_JAVA_HEAP
! Klass* Klass::array_klass_or_null(ArrayStorageProperties storage_props, int rank) {
EXCEPTION_MARK;
// No exception can be thrown by array_klass_impl when called with or_null == true.
// (In anycase, the execption mark will fail if it do so)
! return array_klass_impl(storage_props, true, rank, THREAD);
}
! Klass* Klass::array_klass_or_null(ArrayStorageProperties storage_props) {
EXCEPTION_MARK;
// No exception can be thrown by array_klass_impl when called with or_null == true.
// (In anycase, the execption mark will fail if it do so)
! return array_klass_impl(storage_props, true, THREAD);
}
! Klass* Klass::array_klass_impl(ArrayStorageProperties storage_props, bool or_null, int rank, TRAPS) {
fatal("array_klass should be dispatched to InstanceKlass, ObjArrayKlass or TypeArrayKlass");
return NULL;
}
! Klass* Klass::array_klass_impl(ArrayStorageProperties storage_props, bool or_null, TRAPS) {
fatal("array_klass should be dispatched to InstanceKlass, ObjArrayKlass or TypeArrayKlass");
return NULL;
}
void Klass::check_array_allocation_length(int length, int max_length, TRAPS) {
*** 739,748 ****
--- 739,758 ----
obj->print_address_on(st);
if (WizardMode) {
// print header
obj->mark()->print_on(st);
+ ArrayStorageProperties props = obj->array_storage_properties();
+ if (props.value() != 0) {
+ st->print(" - array storage properties: ");
+ if (props.is_flattened()) {
+ st->print(" flat");
+ }
+ if (props.is_null_free()) {
+ st->print(" non nullable");
+ }
+ }
}
// print class
st->print(" - klass: ");
obj->klass()->print_value_on(st);
< prev index next >