< prev index next >

src/share/vm/gc/shenandoah/shenandoahBarrierSet.cpp

Print this page
rev 14453 : Remove secondary marking bitmap.


 428   }
 429   return obj;
 430 }
 431 
 432 void ShenandoahBarrierSet::keep_alive_barrier(oop obj) {
 433   if (ShenandoahKeepAliveBarrier) {
 434     if (_heap->concurrent_mark_in_progress()) {
 435       G1SATBCardTableModRefBS::enqueue(obj);
 436     } else if (_heap->is_concurrent_partial_in_progress()) {
 437       write_barrier_impl(obj);
 438     }
 439   }
 440 }
 441 
 442 #ifdef ASSERT
 443 void ShenandoahBarrierSet::verify_safe_oop(oop p) {
 444   ShenandoahHeap* heap = ShenandoahHeap::heap();
 445   if (p == NULL) return;
 446   if (heap->in_collection_set(p) &&
 447       ! heap->cancelled_concgc()) {
 448     tty->print_cr("oop = "PTR_FORMAT", resolved: "PTR_FORMAT", marked-next %s, marked-complete: %s",
 449                   p2i(p),
 450                   p2i(read_barrier(p)),
 451                   BOOL_TO_STR(heap->is_marked_next(p)),
 452                   BOOL_TO_STR(heap->is_marked_complete(p)));
 453     tty->print_cr("in_cset: %s", BOOL_TO_STR(heap->in_collection_set(p)));
 454     heap->heap_region_containing((HeapWord*) p)->print();
 455     tty->print_cr("top-at-mark-start: %p", heap->next_top_at_mark_start((HeapWord*) p));
 456     tty->print_cr("top-at-prev-mark-start: %p", heap->complete_top_at_mark_start((HeapWord*) p));
 457     tty->print_cr("marking: %s, evacuating: %s", BOOL_TO_STR(heap->concurrent_mark_in_progress()), BOOL_TO_STR(heap->is_evacuation_in_progress()));
 458     assert(false, "We should have fixed this earlier");
 459   }
 460 }
 461 #endif


 428   }
 429   return obj;
 430 }
 431 
 432 void ShenandoahBarrierSet::keep_alive_barrier(oop obj) {
 433   if (ShenandoahKeepAliveBarrier) {
 434     if (_heap->concurrent_mark_in_progress()) {
 435       G1SATBCardTableModRefBS::enqueue(obj);
 436     } else if (_heap->is_concurrent_partial_in_progress()) {
 437       write_barrier_impl(obj);
 438     }
 439   }
 440 }
 441 
 442 #ifdef ASSERT
 443 void ShenandoahBarrierSet::verify_safe_oop(oop p) {
 444   ShenandoahHeap* heap = ShenandoahHeap::heap();
 445   if (p == NULL) return;
 446   if (heap->in_collection_set(p) &&
 447       ! heap->cancelled_concgc()) {
 448     tty->print_cr("oop = "PTR_FORMAT", resolved: "PTR_FORMAT", marked %s",
 449                   p2i(p),
 450                   p2i(read_barrier(p)),
 451                   BOOL_TO_STR(heap->is_marked(p)));

 452     tty->print_cr("in_cset: %s", BOOL_TO_STR(heap->in_collection_set(p)));
 453     heap->heap_region_containing((HeapWord*) p)->print();
 454     tty->print_cr("top-at-mark-start: %p", heap->top_at_mark_start((HeapWord*) p));

 455     tty->print_cr("marking: %s, evacuating: %s", BOOL_TO_STR(heap->concurrent_mark_in_progress()), BOOL_TO_STR(heap->is_evacuation_in_progress()));
 456     assert(false, "We should have fixed this earlier");
 457   }
 458 }
 459 #endif
< prev index next >