src/share/vm/gc_implementation/g1/g1RemSetSummary.cpp

Print this page
rev 6872 : imported patch nm-hashtable


 236 
 237 public:
 238   HRRSStatsIter() : _all("All"), _young("Young"), _humonguous("Humonguous"),
 239     _free("Free"), _old("Old"), _max_code_root_mem_sz_region(NULL), _max_rs_mem_sz_region(NULL),
 240     _max_rs_mem_sz(0), _max_code_root_mem_sz(0)
 241   {}
 242 
 243   bool doHeapRegion(HeapRegion* r) {
 244     HeapRegionRemSet* hrrs = r->rem_set();
 245 
 246     // HeapRegionRemSet::mem_size() includes the
 247     // size of the strong code roots
 248     size_t rs_mem_sz = hrrs->mem_size();
 249     if (rs_mem_sz > _max_rs_mem_sz) {
 250       _max_rs_mem_sz = rs_mem_sz;
 251       _max_rs_mem_sz_region = r;
 252     }
 253     size_t occupied_cards = hrrs->occupied();
 254     size_t code_root_mem_sz = hrrs->strong_code_roots_mem_size();
 255     if (code_root_mem_sz > max_code_root_mem_sz()) {

 256       _max_code_root_mem_sz_region = r;
 257     }
 258     size_t code_root_elems = hrrs->strong_code_roots_list_length();
 259 
 260     RegionTypeCounter* current = NULL;
 261     if (r->is_young()) {
 262       current = &_young;
 263     } else if (r->isHumongous()) {
 264       current = &_humonguous;
 265     } else if (r->is_empty()) {
 266       current = &_free;
 267     } else {
 268       current = &_old;
 269     }
 270     current->add(rs_mem_sz, occupied_cards, code_root_mem_sz, code_root_elems);
 271     _all.add(rs_mem_sz, occupied_cards, code_root_mem_sz, code_root_elems);
 272 
 273     return false;
 274   }
 275 




 236 
 237 public:
 238   HRRSStatsIter() : _all("All"), _young("Young"), _humonguous("Humonguous"),
 239     _free("Free"), _old("Old"), _max_code_root_mem_sz_region(NULL), _max_rs_mem_sz_region(NULL),
 240     _max_rs_mem_sz(0), _max_code_root_mem_sz(0)
 241   {}
 242 
 243   bool doHeapRegion(HeapRegion* r) {
 244     HeapRegionRemSet* hrrs = r->rem_set();
 245 
 246     // HeapRegionRemSet::mem_size() includes the
 247     // size of the strong code roots
 248     size_t rs_mem_sz = hrrs->mem_size();
 249     if (rs_mem_sz > _max_rs_mem_sz) {
 250       _max_rs_mem_sz = rs_mem_sz;
 251       _max_rs_mem_sz_region = r;
 252     }
 253     size_t occupied_cards = hrrs->occupied();
 254     size_t code_root_mem_sz = hrrs->strong_code_roots_mem_size();
 255     if (code_root_mem_sz > max_code_root_mem_sz()) {
 256       _max_code_root_mem_sz = code_root_mem_sz;
 257       _max_code_root_mem_sz_region = r;
 258     }
 259     size_t code_root_elems = hrrs->strong_code_roots_list_length();
 260 
 261     RegionTypeCounter* current = NULL;
 262     if (r->is_young()) {
 263       current = &_young;
 264     } else if (r->isHumongous()) {
 265       current = &_humonguous;
 266     } else if (r->is_empty()) {
 267       current = &_free;
 268     } else {
 269       current = &_old;
 270     }
 271     current->add(rs_mem_sz, occupied_cards, code_root_mem_sz, code_root_elems);
 272     _all.add(rs_mem_sz, occupied_cards, code_root_mem_sz, code_root_elems);
 273 
 274     return false;
 275   }
 276