< prev index next >
src/hotspot/share/gc/shenandoah/shenandoahAsserts.cpp
Print this page
rev 50076 : Fold Partial GC into Traversal GC
*** 26,35 ****
--- 26,37 ----
#include "gc/shenandoah/brooksPointer.hpp"
#include "gc/shenandoah/shenandoahConnectionMatrix.hpp"
#include "gc/shenandoah/shenandoahAsserts.hpp"
#include "gc/shenandoah/shenandoahHeap.hpp"
#include "gc/shenandoah/shenandoahHeap.inline.hpp"
+ #include "gc/shenandoah/shenandoahHeapRegionSet.inline.hpp"
+ #include "gc/shenandoah/shenandoahTraversalGC.hpp"
#include "memory/resourceArea.hpp"
void ShenandoahAsserts::print_obj(ShenandoahMessageBuffer& msg, oop obj) {
ShenandoahHeap* heap = ShenandoahHeap::heap();
ShenandoahHeapRegion *r = heap->heap_region_containing(obj);
*** 42,51 ****
--- 44,57 ----
msg.append(" %3s allocated after complete mark start\n", heap->allocated_after_complete_mark_start((HeapWord *) obj) ? "" : "not");
msg.append(" %3s allocated after next mark start\n", heap->allocated_after_next_mark_start((HeapWord *) obj) ? "" : "not");
msg.append(" %3s marked complete\n", heap->is_marked_complete(obj) ? "" : "not");
msg.append(" %3s marked next\n", heap->is_marked_next(obj) ? "" : "not");
msg.append(" %3s in collection set\n", heap->in_collection_set(obj) ? "" : "not");
+ if (heap->traversal_gc() != NULL) {
+ msg.append(" %3s in root set\n", heap->traversal_gc()->root_regions()->is_in((HeapWord*) obj) ? "" : "not");
+ msg.append(" %3s in traversal set\n", heap->traversal_gc()->traversal_set()->is_in((HeapWord*) obj) ? "" : "not");
+ }
msg.append(" region: %s", ss.as_string());
}
void ShenandoahAsserts::print_non_obj(ShenandoahMessageBuffer& msg, void* loc) {
ShenandoahHeap* heap = ShenandoahHeap::heap();
< prev index next >