< prev index next >

src/hotspot/share/gc/g1/heapRegionManager.hpp

Print this page

        

@@ -170,15 +170,26 @@
   inline HeapRegion* addr_to_region(HeapWord* addr) const;
 
   // Insert the given region into the free region list.
   inline void insert_into_free_list(HeapRegion* hr);
 
+  // Abandon the current free list to allow for a rebuild. The actual
+  // region in the free list must be handled separately.
+  void abandon_free_list() {
+    _free_list.abandon();
+  }
+
   // Insert the given region list into the global free region list.
   void insert_list_into_free_list(FreeRegionList* list) {
     _free_list.add_ordered(list);
   }
 
+  // Append the list to the current list, requires the lists to be sorted.
+  void append_to_free_list(FreeRegionList* list) {
+    _free_list.append_ordered(list);
+  }
+
   // Allocate a free region with specific node index. If fails allocate with next node index.
   virtual HeapRegion* allocate_free_region(HeapRegionType type, uint requested_node_index);
 
   inline void allocate_free_regions_starting_at(uint first, uint num_regions);
 
< prev index next >