comparison src/share/vm/gc_implementation/g1/heapRegion.hpp @ 796:29e7d79232b9

6819065: G1: eliminate high serial card table clearing time Reviewed-by: iveresov, tonyp
author apetrusenko
date Tue, 19 May 2009 04:05:31 -0700
parents 96b229c54d1e
children 830ca2573896
comparison
equal deleted inserted replaced
795:215f81b4d9b3 796:29e7d79232b9
225 HeapRegion* _next_in_special_set; 225 HeapRegion* _next_in_special_set;
226 226
227 // next region in the young "generation" region set 227 // next region in the young "generation" region set
228 HeapRegion* _next_young_region; 228 HeapRegion* _next_young_region;
229 229
230 // Next region whose cards need cleaning
231 HeapRegion* _next_dirty_cards_region;
232
230 // For parallel heapRegion traversal. 233 // For parallel heapRegion traversal.
231 jint _claimed; 234 jint _claimed;
232 235
233 // We use concurrent marking to determine the amount of live data 236 // We use concurrent marking to determine the amount of live data
234 // in each heap region. 237 // in each heap region.
465 468
466 HeapRegion* get_next_young_region() { return _next_young_region; } 469 HeapRegion* get_next_young_region() { return _next_young_region; }
467 void set_next_young_region(HeapRegion* hr) { 470 void set_next_young_region(HeapRegion* hr) {
468 _next_young_region = hr; 471 _next_young_region = hr;
469 } 472 }
473
474 HeapRegion* get_next_dirty_cards_region() const { return _next_dirty_cards_region; }
475 HeapRegion** next_dirty_cards_region_addr() { return &_next_dirty_cards_region; }
476 void set_next_dirty_cards_region(HeapRegion* hr) { _next_dirty_cards_region = hr; }
477 bool is_on_dirty_cards_region_list() const { return get_next_dirty_cards_region() != NULL; }
470 478
471 // Allows logical separation between objects allocated before and after. 479 // Allows logical separation between objects allocated before and after.
472 void save_marks(); 480 void save_marks();
473 481
474 // Reset HR stuff to default values. 482 // Reset HR stuff to default values.