< prev index next >

src/share/vm/services/heapDumper.cpp

Print this page
rev 12854 : [mq]: gcinterface.patch

*** 43,55 **** #include "runtime/vm_operations.hpp" #include "services/heapDumper.hpp" #include "services/threadService.hpp" #include "utilities/macros.hpp" #include "utilities/ostream.hpp" - #if INCLUDE_ALL_GCS - #include "gc/parallel/parallelScavengeHeap.hpp" - #endif // INCLUDE_ALL_GCS /* * HPROF binary format - description copied from: * src/share/demo/jvmti/hprof/hprof_io.c * --- 43,52 ----
*** 1750,1760 **** // roots. void VM_HeapDumper::doit() { HandleMark hm; ! CollectedHeap* ch = Universe::heap(); ch->ensure_parsability(false); // must happen, even if collection does // not happen (e.g. due to GCLocker) if (_gc_before_heap_dump) { --- 1747,1757 ---- // roots. void VM_HeapDumper::doit() { HandleMark hm; ! CollectedHeap* ch = GC::gc()->heap(); ch->ensure_parsability(false); // must happen, even if collection does // not happen (e.g. due to GCLocker) if (_gc_before_heap_dump) {
*** 1805,1815 **** // to check if the current segment exceeds a threshold. If so, a new // segment is started. // The HPROF_GC_CLASS_DUMP and HPROF_GC_INSTANCE_DUMP are the vast bulk // of the heap dump. HeapObjectDumper obj_dumper(this, writer()); ! Universe::heap()->safe_object_iterate(&obj_dumper); // HPROF_GC_ROOT_THREAD_OBJ + frames + jni locals do_threads(); check_segment_length(); --- 1802,1812 ---- // to check if the current segment exceeds a threshold. If so, a new // segment is started. // The HPROF_GC_CLASS_DUMP and HPROF_GC_INSTANCE_DUMP are the vast bulk // of the heap dump. HeapObjectDumper obj_dumper(this, writer()); ! GC::gc()->heap()->safe_object_iterate(&obj_dumper); // HPROF_GC_ROOT_THREAD_OBJ + frames + jni locals do_threads(); check_segment_length();
< prev index next >