src/hotspot/share/gc/g1/g1CollectedHeap.cpp
changeset 59061 df6f2350edfa
parent 59060 fce1fa1bdc91
child 59062 6530de931b8e
equal deleted inserted replaced
59060:fce1fa1bdc91 59061:df6f2350edfa
  4603   } else {
  4603   } else {
  4604     return survivor_regions_count() < policy()->max_survivor_regions();
  4604     return survivor_regions_count() < policy()->max_survivor_regions();
  4605   }
  4605   }
  4606 }
  4606 }
  4607 
  4607 
  4608 HeapRegion* G1CollectedHeap::new_gc_alloc_region(size_t word_size, G1HeapRegionAttr dest) {
  4608 HeapRegion* G1CollectedHeap::new_gc_alloc_region(size_t word_size, G1HeapRegionAttr dest, uint node_index) {
  4609   assert(FreeList_lock->owned_by_self(), "pre-condition");
  4609   assert(FreeList_lock->owned_by_self(), "pre-condition");
  4610 
  4610 
  4611   if (!has_more_regions(dest)) {
  4611   if (!has_more_regions(dest)) {
  4612     return NULL;
  4612     return NULL;
  4613   }
  4613   }
  4619     type = HeapRegionType::Old;
  4619     type = HeapRegionType::Old;
  4620   }
  4620   }
  4621 
  4621 
  4622   HeapRegion* new_alloc_region = new_region(word_size,
  4622   HeapRegion* new_alloc_region = new_region(word_size,
  4623                                             type,
  4623                                             type,
  4624                                             true /* do_expand */);
  4624                                             true /* do_expand */,
       
  4625                                             node_index);
  4625 
  4626 
  4626   if (new_alloc_region != NULL) {
  4627   if (new_alloc_region != NULL) {
  4627     if (type.is_survivor()) {
  4628     if (type.is_survivor()) {
  4628       new_alloc_region->set_survivor();
  4629       new_alloc_region->set_survivor();
  4629       _survivor.add(new_alloc_region);
  4630       _survivor.add(new_alloc_region);