< prev index next >

src/share/vm/gc/g1/concurrentMark.inline.hpp

Print this page

        

*** 195,207 **** #define check_mark(addr) \ assert(_bmStartWord <= (addr) && (addr) < (_bmStartWord + _bmWordSize), \ "outside underlying space?"); \ assert(G1CollectedHeap::heap()->is_in_exact(addr), \ ! err_msg("Trying to access not available bitmap " PTR_FORMAT \ " corresponding to " PTR_FORMAT " (%u)", \ ! p2i(this), p2i(addr), G1CollectedHeap::heap()->addr_to_region(addr))); inline void CMBitMap::mark(HeapWord* addr) { check_mark(addr); _bm.set_bit(heapWordToOffset(addr)); } --- 195,207 ---- #define check_mark(addr) \ assert(_bmStartWord <= (addr) && (addr) < (_bmStartWord + _bmWordSize), \ "outside underlying space?"); \ assert(G1CollectedHeap::heap()->is_in_exact(addr), \ ! "Trying to access not available bitmap " PTR_FORMAT \ " corresponding to " PTR_FORMAT " (%u)", \ ! p2i(this), p2i(addr), G1CollectedHeap::heap()->addr_to_region(addr)); inline void CMBitMap::mark(HeapWord* addr) { check_mark(addr); _bm.set_bit(heapWordToOffset(addr)); }
*** 223,234 **** #undef check_mark template<typename Fn> inline void CMMarkStack::iterate(Fn fn) { ! assert(_saved_index == _index, ! err_msg("saved index: %d index: %d", _saved_index, _index)); for (int i = 0; i < _index; ++i) { fn(_base[i]); } } --- 223,233 ---- #undef check_mark template<typename Fn> inline void CMMarkStack::iterate(Fn fn) { ! assert(_saved_index == _index, "saved index: %d index: %d", _saved_index, _index); for (int i = 0; i < _index; ++i) { fn(_base[i]); } }
*** 383,393 **** } increment_refs_reached(); HeapWord* objAddr = (HeapWord*) obj; ! assert(obj->is_oop_or_null(true /* ignore mark word */), err_msg("Expected an oop or NULL at " PTR_FORMAT, p2i(obj))); if (_g1h->is_in_g1_reserved(objAddr)) { assert(obj != NULL, "null check is implicit"); if (!_nextMarkBitMap->isMarked(objAddr)) { // Only get the containing region if the object is not marked on the // bitmap (otherwise, it's a waste of time since we won't do --- 382,392 ---- } increment_refs_reached(); HeapWord* objAddr = (HeapWord*) obj; ! assert(obj->is_oop_or_null(true /* ignore mark word */), "Expected an oop or NULL at " PTR_FORMAT, p2i(obj)); if (_g1h->is_in_g1_reserved(objAddr)) { assert(obj != NULL, "null check is implicit"); if (!_nextMarkBitMap->isMarked(objAddr)) { // Only get the containing region if the object is not marked on the // bitmap (otherwise, it's a waste of time since we won't do
*** 425,437 **** // might not be in a consistent state (another thread might be in // the process of copying it). So the best thing we can do is to // assert that word_size is under an upper bound which is its // containing region's capacity. assert(word_size * HeapWordSize <= hr->capacity(), ! err_msg("size: " SIZE_FORMAT " capacity: " SIZE_FORMAT " " HR_FORMAT, word_size * HeapWordSize, hr->capacity(), ! HR_FORMAT_PARAMS(hr))); if (addr < hr->next_top_at_mark_start()) { if (!_nextMarkBitMap->isMarked(addr)) { par_mark_and_count(obj, word_size, hr, worker_id); } --- 424,436 ---- // might not be in a consistent state (another thread might be in // the process of copying it). So the best thing we can do is to // assert that word_size is under an upper bound which is its // containing region's capacity. assert(word_size * HeapWordSize <= hr->capacity(), ! "size: " SIZE_FORMAT " capacity: " SIZE_FORMAT " " HR_FORMAT, word_size * HeapWordSize, hr->capacity(), ! HR_FORMAT_PARAMS(hr)); if (addr < hr->next_top_at_mark_start()) { if (!_nextMarkBitMap->isMarked(addr)) { par_mark_and_count(obj, word_size, hr, worker_id); }
< prev index next >