< prev index next >
src/hotspot/share/gc/g1/g1Allocator.inline.hpp
Print this page
rev 49945 : imported patch 8191471-g1-varying-tlab-allocation
rev 49946 : imported patch 8191471-g1-retained-mutator-region
@@ -39,12 +39,18 @@
inline OldGCAllocRegion* G1Allocator::old_gc_alloc_region() {
return &_old_gc_alloc_region;
}
-inline HeapWord* G1Allocator::attempt_allocation(size_t word_size) {
- return mutator_alloc_region()->attempt_allocation(word_size);
+inline HeapWord* G1Allocator::attempt_allocation(size_t min_word_size,
+ size_t desired_word_size,
+ size_t* actual_word_size) {
+ HeapWord* result = mutator_alloc_region()->attempt_retained_allocation(min_word_size, desired_word_size, actual_word_size);
+ if (result != NULL) {
+ return result;
+ }
+ return mutator_alloc_region()->attempt_allocation(min_word_size, desired_word_size, actual_word_size);
}
inline HeapWord* G1Allocator::attempt_allocation_locked(size_t word_size) {
HeapWord* result = mutator_alloc_region()->attempt_allocation_locked(word_size);
assert(result != NULL || mutator_alloc_region()->get() == NULL,
< prev index next >