< prev index next >

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

Print this page




 164   }
 165 
 166   void verify_list();
 167 
 168 #ifdef ASSERT
 169   bool contains(HeapRegion* hr) const {
 170     return hr->containing_set() == this;
 171   }
 172 #endif
 173 
 174   static void set_unrealistically_long_length(uint len);
 175 
 176   // Add hr to the list. The region should not be a member of another set.
 177   // Assumes that the list is ordered and will preserve that order. The order
 178   // is determined by hrm_index.
 179   inline void add_ordered(HeapRegion* hr);
 180 
 181   // Removes from head or tail based on the given argument.
 182   HeapRegion* remove_region(bool from_head);
 183 




 184   // Merge two ordered lists. The result is also ordered. The order is
 185   // determined by hrm_index.
 186   void add_ordered(FreeRegionList* from_list);
 187 
 188   // It empties the list by removing all regions from it.
 189   void remove_all();
 190 
 191   // Remove all (contiguous) regions from first to first + num_regions -1 from
 192   // this list.
 193   // Num_regions must be > 1.
 194   void remove_starting_at(HeapRegion* first, uint num_regions);
 195 
 196   virtual void verify();
 197 
 198   uint num_of_regions_in_range(uint start, uint end) const;
 199 };
 200 
 201 // Iterator class that provides a convenient way to iterate over the
 202 // regions of a FreeRegionList.
 203 




 164   }
 165 
 166   void verify_list();
 167 
 168 #ifdef ASSERT
 169   bool contains(HeapRegion* hr) const {
 170     return hr->containing_set() == this;
 171   }
 172 #endif
 173 
 174   static void set_unrealistically_long_length(uint len);
 175 
 176   // Add hr to the list. The region should not be a member of another set.
 177   // Assumes that the list is ordered and will preserve that order. The order
 178   // is determined by hrm_index.
 179   inline void add_ordered(HeapRegion* hr);
 180 
 181   // Removes from head or tail based on the given argument.
 182   HeapRegion* remove_region(bool from_head);
 183 
 184   HeapRegion* remove_region_with_node_index(bool from_head,
 185                                             const uint requested_node_index,
 186                                             uint* region_node_index);
 187 
 188   // Merge two ordered lists. The result is also ordered. The order is
 189   // determined by hrm_index.
 190   void add_ordered(FreeRegionList* from_list);
 191 
 192   // It empties the list by removing all regions from it.
 193   void remove_all();
 194 
 195   // Remove all (contiguous) regions from first to first + num_regions -1 from
 196   // this list.
 197   // Num_regions must be > 1.
 198   void remove_starting_at(HeapRegion* first, uint num_regions);
 199 
 200   virtual void verify();
 201 
 202   uint num_of_regions_in_range(uint start, uint end) const;
 203 };
 204 
 205 // Iterator class that provides a convenient way to iterate over the
 206 // regions of a FreeRegionList.
 207 


< prev index next >