< prev index next >

src/hotspot/share/memory/universe.hpp

Print this page
rev 48545 : Value-based classes (vbc) / Oop value test via metadata ptr

*** 193,203 **** // For UseCompressedOops. static struct NarrowPtrStruct _narrow_oop; // For UseCompressedClassPointers. static struct NarrowPtrStruct _narrow_klass; static address _narrow_ptrs_base; ! // array of dummy objects used with +FullGCAlot debug_only(static objArrayOop _fullgc_alot_dummy_array;) // index of next entry to clear debug_only(static int _fullgc_alot_dummy_next;) --- 193,205 ---- // For UseCompressedOops. static struct NarrowPtrStruct _narrow_oop; // For UseCompressedClassPointers. static struct NarrowPtrStruct _narrow_klass; static address _narrow_ptrs_base; ! #if INCLUDE_VBC ! static int _oop_metadata_odd_mask; ! #endif // array of dummy objects used with +FullGCAlot debug_only(static objArrayOop _fullgc_alot_dummy_array;) // index of next entry to clear debug_only(static int _fullgc_alot_dummy_next;)
*** 436,447 **** --- 438,457 ---- } static void set_narrow_klass_shift(int shift) { assert(shift == 0 || shift == LogKlassAlignmentInBytes, "invalid shift for klass ptrs"); _narrow_klass._shift = shift; + #if INCLUDE_VBC + _oop_metadata_odd_mask = (shift) ? 1 : KlassPtrEvenOddMask; + #endif } + #if INCLUDE_VBC + static int oop_metadata_odd_mask() { return _oop_metadata_odd_mask; } + #endif + + // Reserve Java heap and determine CompressedOops mode static ReservedSpace reserve_heap(size_t heap_size, size_t alignment); // Historic gc information static size_t get_heap_capacity_at_last_gc() { return _heap_capacity_at_last_gc; }
< prev index next >