comparison src/share/vm/gc_implementation/g1/concurrentMark.inline.hpp @ 14909:4ca6dc0799b6

Backout jdk9 merge
author Gilles Duboscq <duboscq@ssw.jku.at>
date Tue, 01 Apr 2014 13:57:07 +0200
parents 63a4eb8bcd23
children 52b4284cb496
comparison
equal deleted inserted replaced
14908:8db6e76cb658 14909:4ca6dc0799b6
103 // Note: if we're looking at the last region in heap - end 103 // Note: if we're looking at the last region in heap - end
104 // could be actually just beyond the end of the heap; end_idx 104 // could be actually just beyond the end of the heap; end_idx
105 // will then correspond to a (non-existent) card that is also 105 // will then correspond to a (non-existent) card that is also
106 // just beyond the heap. 106 // just beyond the heap.
107 if (g1h->is_in_g1_reserved(end) && !ct_bs->is_card_aligned(end)) { 107 if (g1h->is_in_g1_reserved(end) && !ct_bs->is_card_aligned(end)) {
108 // end of region is not card aligned - increment to cover 108 // end of region is not card aligned - incremement to cover
109 // all the cards spanned by the region. 109 // all the cards spanned by the region.
110 end_idx += 1; 110 end_idx += 1;
111 } 111 }
112 // The card bitmap is task/worker specific => no need to use 112 // The card bitmap is task/worker specific => no need to use
113 // the 'par' BitMap routines. 113 // the 'par' BitMap routines.
220 return true; 220 return true;
221 } 221 }
222 return false; 222 return false;
223 } 223 }
224 224
225 // Unconditionally mark the given object, and unconditionally count 225 // Unconditionally mark the given object, and unconditinally count
226 // the object in the counting structures for worker id 0. 226 // the object in the counting structures for worker id 0.
227 // Should *not* be called from parallel code. 227 // Should *not* be called from parallel code.
228 inline bool ConcurrentMark::mark_and_count(oop obj, HeapRegion* hr) { 228 inline bool ConcurrentMark::mark_and_count(oop obj, HeapRegion* hr) {
229 HeapWord* addr = (HeapWord*)obj; 229 HeapWord* addr = (HeapWord*)obj;
230 _nextMarkBitMap->mark(addr); 230 _nextMarkBitMap->mark(addr);