154 GCMemoryManager _memory_manager;
155 GCMemoryManager _full_gc_memory_manager;
156
157 MemoryPool* _eden_pool;
158 MemoryPool* _survivor_pool;
159 MemoryPool* _old_pool;
160
161 static size_t _humongous_object_threshold_in_words;
162
163 // The secondary free list which contains regions that have been
164 // freed up during the cleanup process. This will be appended to
165 // the master free list when appropriate.
166 FreeRegionList _secondary_free_list;
167
168 // It keeps track of the old regions.
169 HeapRegionSet _old_set;
170
171 // It keeps track of the humongous regions.
172 HeapRegionSet _humongous_set;
173
174 void eagerly_reclaim_humongous_regions();
175 // Start a new incremental collection set for the next pause.
176 void start_new_collection_set();
177
178 // The number of regions we could create by expansion.
179 uint _expansion_regions;
180
181 // The block offset table for the G1 heap.
182 G1BlockOffsetTable* _bot;
183
184 // Tears down the region sets / lists so that they are empty and the
185 // regions on the heap do not belong to a region set / list. The
186 // only exception is the humongous set which we leave unaltered. If
187 // free_list_only is true, it will only tear down the master free
188 // list. It is called before a Full GC (free_list_only == false) or
189 // before heap shrinking (free_list_only == true).
190 void tear_down_region_sets(bool free_list_only);
191
192 // Rebuilds the region sets / lists so that they are repopulated to
193 // reflect the contents of the heap. The only exception is the
|
154 GCMemoryManager _memory_manager;
155 GCMemoryManager _full_gc_memory_manager;
156
157 MemoryPool* _eden_pool;
158 MemoryPool* _survivor_pool;
159 MemoryPool* _old_pool;
160
161 static size_t _humongous_object_threshold_in_words;
162
163 // The secondary free list which contains regions that have been
164 // freed up during the cleanup process. This will be appended to
165 // the master free list when appropriate.
166 FreeRegionList _secondary_free_list;
167
168 // It keeps track of the old regions.
169 HeapRegionSet _old_set;
170
171 // It keeps track of the humongous regions.
172 HeapRegionSet _humongous_set;
173
174 virtual void initialize_serviceability();
175
176 void eagerly_reclaim_humongous_regions();
177 // Start a new incremental collection set for the next pause.
178 void start_new_collection_set();
179
180 // The number of regions we could create by expansion.
181 uint _expansion_regions;
182
183 // The block offset table for the G1 heap.
184 G1BlockOffsetTable* _bot;
185
186 // Tears down the region sets / lists so that they are empty and the
187 // regions on the heap do not belong to a region set / list. The
188 // only exception is the humongous set which we leave unaltered. If
189 // free_list_only is true, it will only tear down the master free
190 // list. It is called before a Full GC (free_list_only == false) or
191 // before heap shrinking (free_list_only == true).
192 void tear_down_region_sets(bool free_list_only);
193
194 // Rebuilds the region sets / lists so that they are repopulated to
195 // reflect the contents of the heap. The only exception is the
|