comparison src/share/vm/gc_implementation/g1/concurrentMark.cpp @ 9076:7b835924c31c

8011872: Include Bit Map addresses in the hs_err files Reviewed-by: brutisso, jmasa
author stefank
date Wed, 10 Apr 2013 14:26:49 +0200
parents 1179172e9ec9
children b06ac540229e
comparison
equal deleted inserted replaced
9075:ba42fd5e00e6 9076:7b835924c31c
98 "size inconsistency"); 98 "size inconsistency");
99 return _bmStartWord == (HeapWord*)(heap_rs.base()) && 99 return _bmStartWord == (HeapWord*)(heap_rs.base()) &&
100 _bmWordSize == heap_rs.size()>>LogHeapWordSize; 100 _bmWordSize == heap_rs.size()>>LogHeapWordSize;
101 } 101 }
102 #endif 102 #endif
103
104 void CMBitMapRO::print_on_error(outputStream* st, const char* prefix) const {
105 _bm.print_on_error(st, prefix);
106 }
103 107
104 bool CMBitMap::allocate(ReservedSpace heap_rs) { 108 bool CMBitMap::allocate(ReservedSpace heap_rs) {
105 _bmStartWord = (HeapWord*)(heap_rs.base()); 109 _bmStartWord = (HeapWord*)(heap_rs.base());
106 _bmWordSize = heap_rs.size()/HeapWordSize; // heap_rs.size() is in bytes 110 _bmWordSize = heap_rs.size()/HeapWordSize; // heap_rs.size() is in bytes
107 ReservedSpace brs(ReservedSpace::allocation_align_size_up( 111 ReservedSpace brs(ReservedSpace::allocation_align_size_up(
3273 3277
3274 void ConcurrentMark::print_worker_threads_on(outputStream* st) const { 3278 void ConcurrentMark::print_worker_threads_on(outputStream* st) const {
3275 if (use_parallel_marking_threads()) { 3279 if (use_parallel_marking_threads()) {
3276 _parallel_workers->print_worker_threads_on(st); 3280 _parallel_workers->print_worker_threads_on(st);
3277 } 3281 }
3282 }
3283
3284 void ConcurrentMark::print_on_error(outputStream* st) const {
3285 st->print_cr("Marking Bits (Prev, Next): (CMBitMap*) " PTR_FORMAT ", (CMBitMap*) " PTR_FORMAT,
3286 _prevMarkBitMap, _nextMarkBitMap);
3287 _prevMarkBitMap->print_on_error(st, " Prev Bits: ");
3288 _nextMarkBitMap->print_on_error(st, " Next Bits: ");
3278 } 3289 }
3279 3290
3280 // We take a break if someone is trying to stop the world. 3291 // We take a break if someone is trying to stop the world.
3281 bool ConcurrentMark::do_yield_check(uint worker_id) { 3292 bool ConcurrentMark::do_yield_check(uint worker_id) {
3282 if (should_yield()) { 3293 if (should_yield()) {