diff src/share/vm/gc_implementation/g1/heapRegion.hpp @ 6725:da91efe96a93

6964458: Reimplement class meta-data storage to use native memory Summary: Remove PermGen, allocate meta-data in metaspace linked to class loaders, rewrite GC walking, rewrite and rename metadata to be C++ classes Reviewed-by: jmasa, stefank, never, coleenp, kvn, brutisso, mgerdin, dholmes, jrose, twisti, roland Contributed-by: jmasa <jon.masamitsu@oracle.com>, stefank <stefan.karlsson@oracle.com>, mgerdin <mikael.gerdin@oracle.com>, never <tom.rodriguez@oracle.com>
author coleenp
date Sat, 01 Sep 2012 13:25:18 -0400
parents a2f7274eb6ef
children 8fbf05030e24
line wrap: on
line diff
--- a/src/share/vm/gc_implementation/g1/heapRegion.hpp	Fri Aug 31 16:39:35 2012 -0700
+++ b/src/share/vm/gc_implementation/g1/heapRegion.hpp	Sat Sep 01 13:25:18 2012 -0400
@@ -85,7 +85,7 @@
 
   void walk_mem_region_with_cl(MemRegion mr,
                                HeapWord* bottom, HeapWord* top,
-                               OopClosure* cl);
+                               ExtendedOopClosure* cl);
 
   // We don't specialize this for FilteringClosure; filtering is handled by
   // the "FilterKind" mechanism.  But we provide this to avoid a compiler
@@ -94,7 +94,7 @@
                                HeapWord* bottom, HeapWord* top,
                                FilteringClosure* cl) {
     HeapRegionDCTOC::walk_mem_region_with_cl(mr, bottom, top,
-                                                       (OopClosure*)cl);
+                                             (ExtendedOopClosure*)cl);
   }
 
   // Get the actual top of the area on which the closure will
@@ -119,7 +119,7 @@
 
 public:
   HeapRegionDCTOC(G1CollectedHeap* g1,
-                  HeapRegion* hr, OopClosure* cl,
+                  HeapRegion* hr, ExtendedOopClosure* cl,
                   CardTableModRefBS::PrecisionStyle precision,
                   FilterKind fk);
 };
@@ -231,7 +231,7 @@
 
   // Requires that the region "mr" be dense with objects, and begin and end
   // with an object.
-  void oops_in_mr_iterate(MemRegion mr, OopClosure* cl);
+  void oops_in_mr_iterate(MemRegion mr, ExtendedOopClosure* cl);
 
   // The remembered set for this region.
   // (Might want to make this "inline" later, to avoid some alloc failure
@@ -606,7 +606,7 @@
 
   // Apply "cl->do_oop" to (the addresses of) all reference fields in objects
   // allocated in the current region before the last call to "save_mark".
-  void oop_before_save_marks_iterate(OopClosure* cl);
+  void oop_before_save_marks_iterate(ExtendedOopClosure* cl);
 
   // Note the start or end of marking. This tells the heap region
   // that the collector is about to start or has finished (concurrently)