< 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 >