Merge
authorsla
Fri, 11 Oct 2013 14:57:27 +0000
changeset 20676 76322c33c9a0
parent 20674 380fc00765c6 (current diff)
parent 20675 ae7f1f0b5e11 (diff)
child 20678 c185b0cc7797
child 20679 7885e9e68382
Merge
--- a/hotspot/src/share/vm/services/heapDumper.cpp	Fri Oct 11 13:48:02 2013 +0200
+++ b/hotspot/src/share/vm/services/heapDumper.cpp	Fri Oct 11 14:57:27 2013 +0000
@@ -1545,7 +1545,9 @@
 
 // writes a HPROF_GC_CLASS_DUMP record for the given class
 void VM_HeapDumper::do_class_dump(Klass* k) {
-  DumperSupport::dump_class_and_array_classes(writer(), k);
+  if (k->oop_is_instance()) {
+    DumperSupport::dump_class_and_array_classes(writer(), k);
+  }
 }
 
 // writes a HPROF_GC_CLASS_DUMP records for a given basic type
@@ -1722,7 +1724,7 @@
   SymbolTable::symbols_do(&sym_dumper);
 
   // write HPROF_LOAD_CLASS records
-  SystemDictionary::classes_do(&do_load_class);
+  ClassLoaderDataGraph::classes_do(&do_load_class);
   Universe::basic_type_classes_do(&do_load_class);
 
   // write HPROF_FRAME and HPROF_TRACE records
@@ -1733,7 +1735,7 @@
   write_dump_header();
 
   // Writes HPROF_GC_CLASS_DUMP records
-  SystemDictionary::classes_do(&do_class_dump);
+  ClassLoaderDataGraph::classes_do(&do_class_dump);
   Universe::basic_type_classes_do(&do_basic_type_array_class_dump);
   check_segment_length();