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

changeset 7031
ee019285a52c
parent 6939
cd43876f692e
child 7118
227a9e5e4b4a
     1.1 --- a/src/share/vm/gc_implementation/g1/g1ParScanThreadState.cpp	Thu Aug 07 18:09:12 2014 -0700
     1.2 +++ b/src/share/vm/gc_implementation/g1/g1ParScanThreadState.cpp	Mon Aug 04 10:48:10 2014 -0700
     1.3 @@ -288,7 +288,12 @@
     1.4  }
     1.5  
     1.6  HeapWord* G1ParScanThreadState::allocate(GCAllocPurpose purpose, size_t word_sz) {
     1.7 -  HeapWord* obj = alloc_buffer(purpose)->allocate(word_sz);
     1.8 +  HeapWord* obj = NULL;
     1.9 +  if (purpose == GCAllocForSurvived) {
    1.10 +    obj = alloc_buffer(GCAllocForSurvived)->allocate_aligned(word_sz, SurvivorAlignmentInBytes);
    1.11 +  } else {
    1.12 +    obj = alloc_buffer(GCAllocForTenured)->allocate(word_sz);
    1.13 +  }
    1.14    if (obj != NULL) {
    1.15      return obj;
    1.16    }

mercurial