src/share/vm/classfile/symbolTable.hpp

Print this page
rev 4736 : 8015422: Large performance hit when the StringTable is walked twice in Parallel Scavenge
Summary: Combine the calls to StringTable::unlink and StringTable::oops_do in Parallel Scavenge.
Reviewed-by: TBD1, TBD2

@@ -270,11 +270,14 @@
     _the_table = new StringTable();
   }
 
   // GC support
   //   Delete pointers to otherwise-unreachable objects.
-  static void unlink(BoolObjectClosure* cl);
+  static void unlink(BoolObjectClosure* cl, OopClosure* keep_alive);
+  static void unlink(BoolObjectClosure* cl) {
+    unlink(cl, NULL);
+  }
 
   // Invoke "f->do_oop" on the locations of all oops in the table.
   static void oops_do(OopClosure* f);
 
   // Hashing algorithm, used as the hash value used by the