< 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 >