< prev index next >
src/hotspot/share/gc/shared/threadLocalAllocBuffer.hpp
Print this page
rev 52072 : 8211955: GC abstraction for LAB reserve
*** 24,34 ****
#ifndef SHARE_VM_GC_SHARED_THREADLOCALALLOCBUFFER_HPP
#define SHARE_VM_GC_SHARED_THREADLOCALALLOCBUFFER_HPP
#include "gc/shared/gcUtil.hpp"
- #include "oops/typeArrayOop.hpp"
#include "runtime/perfData.hpp"
#include "runtime/vm_version.hpp"
class ThreadLocalAllocStats;
--- 24,33 ----
*** 136,149 ****
// Allocate size HeapWords. The memory is NOT initialized to zero.
inline HeapWord* allocate(size_t size);
// Reserve space at the end of TLAB
! static size_t end_reserve() {
! int reserve_size = typeArrayOopDesc::header_size(T_INT);
! return MAX2(reserve_size, _reserve_for_allocation_prefetch);
! }
static size_t alignment_reserve() { return align_object_size(end_reserve()); }
static size_t alignment_reserve_in_bytes() { return alignment_reserve() * HeapWordSize; }
// Return tlab size or remaining space in eden such that the
// space is large enough to hold obj_size and necessary fill space.
--- 135,145 ----
// Allocate size HeapWords. The memory is NOT initialized to zero.
inline HeapWord* allocate(size_t size);
// Reserve space at the end of TLAB
! static size_t end_reserve();
static size_t alignment_reserve() { return align_object_size(end_reserve()); }
static size_t alignment_reserve_in_bytes() { return alignment_reserve() * HeapWordSize; }
// Return tlab size or remaining space in eden such that the
// space is large enough to hold obj_size and necessary fill space.
< prev index next >