src/hotspot/share/gc/z/zLiveMap.inline.hpp
changeset 59039 c60978f87d45
parent 59038 b9a42ca342db
child 59247 56bf71d64d51
equal deleted inserted replaced
59038:b9a42ca342db 59039:c60978f87d45
    70 
    70 
    71 inline bool ZLiveMap::is_segment_live(BitMap::idx_t segment) const {
    71 inline bool ZLiveMap::is_segment_live(BitMap::idx_t segment) const {
    72   return segment_live_bits().par_at(segment);
    72   return segment_live_bits().par_at(segment);
    73 }
    73 }
    74 
    74 
    75 inline bool ZLiveMap::set_segment_live_atomic(BitMap::idx_t segment) {
    75 inline bool ZLiveMap::set_segment_live(BitMap::idx_t segment) {
    76   return segment_live_bits().par_set_bit(segment, memory_order_release);
    76   return segment_live_bits().par_set_bit(segment, memory_order_release);
    77 }
    77 }
    78 
    78 
    79 inline bool ZLiveMap::claim_segment(BitMap::idx_t segment) {
    79 inline bool ZLiveMap::claim_segment(BitMap::idx_t segment) {
    80   return segment_claim_bits().par_set_bit(segment, memory_order_acq_rel);
    80   return segment_claim_bits().par_set_bit(segment, memory_order_acq_rel);
   101   return is_marked() &&              // Page is marked
   101   return is_marked() &&              // Page is marked
   102          is_segment_live(segment) && // Segment is marked
   102          is_segment_live(segment) && // Segment is marked
   103          _bitmap.at(index);          // Object is marked
   103          _bitmap.at(index);          // Object is marked
   104 }
   104 }
   105 
   105 
   106 inline bool ZLiveMap::set_atomic(size_t index, bool finalizable, bool& inc_live) {
   106 inline bool ZLiveMap::set(size_t index, bool finalizable, bool& inc_live) {
   107   if (!is_marked()) {
   107   if (!is_marked()) {
   108     // First object to be marked during this
   108     // First object to be marked during this
   109     // cycle, reset marking information.
   109     // cycle, reset marking information.
   110     reset(index);
   110     reset(index);
   111   }
   111   }
   118   }
   118   }
   119 
   119 
   120   return _bitmap.par_set_bit_pair(index, finalizable, inc_live);
   120   return _bitmap.par_set_bit_pair(index, finalizable, inc_live);
   121 }
   121 }
   122 
   122 
   123 inline void ZLiveMap::inc_live_atomic(uint32_t objects, size_t bytes) {
   123 inline void ZLiveMap::inc_live(uint32_t objects, size_t bytes) {
   124   Atomic::add(objects, &_live_objects);
   124   Atomic::add(objects, &_live_objects);
   125   Atomic::add(bytes, &_live_bytes);
   125   Atomic::add(bytes, &_live_bytes);
   126 }
   126 }
   127 
   127 
   128 inline BitMap::idx_t ZLiveMap::segment_start(BitMap::idx_t segment) const {
   128 inline BitMap::idx_t ZLiveMap::segment_start(BitMap::idx_t segment) const {