comparison src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp @ 1991:016a3628c885

6994056: G1: when GC locker is active, extend the Eden instead of allocating into the old gen Summary: Allow the eden to the expanded up to a point when the GC locker is active. Reviewed-by: jwilhelm, johnc, ysr, jcoomes
author tonyp
date Tue, 07 Dec 2010 16:47:42 -0500
parents 631f79e71e90
children fb712ff22571
comparison
equal deleted inserted replaced
1975:d9310331a29c 1991:016a3628c885
494 // fails, it retires the current alloc region (if there is one), 494 // fails, it retires the current alloc region (if there is one),
495 // tries to get a new one and retries the allocation. 495 // tries to get a new one and retries the allocation.
496 inline HeapWord* attempt_allocation(size_t word_size); 496 inline HeapWord* attempt_allocation(size_t word_size);
497 497
498 // It assumes that the current alloc region has been retired and 498 // It assumes that the current alloc region has been retired and
499 // tries to allocate a new one. If it's successful, it performs 499 // tries to allocate a new one. If it's successful, it performs the
500 // the allocation out of the new current alloc region and updates 500 // allocation out of the new current alloc region and updates
501 // _cur_alloc_region. 501 // _cur_alloc_region. Normally, it would try to allocate a new
502 // region if the young gen is not full, unless can_expand is true in
503 // which case it would always try to allocate a new region.
502 HeapWord* replace_cur_alloc_region_and_allocate(size_t word_size, 504 HeapWord* replace_cur_alloc_region_and_allocate(size_t word_size,
503 bool at_safepoint, 505 bool at_safepoint,
504 bool do_dirtying); 506 bool do_dirtying,
507 bool can_expand);
505 508
506 // The slow path when we are unable to allocate a new current alloc 509 // The slow path when we are unable to allocate a new current alloc
507 // region to satisfy an allocation request (i.e., when 510 // region to satisfy an allocation request (i.e., when
508 // attempt_allocation() fails). It will try to do an evacuation 511 // attempt_allocation() fails). It will try to do an evacuation
509 // pause, which might stall due to the GC locker, and retry the 512 // pause, which might stall due to the GC locker, and retry the