| Index: src/heap/heap.h
|
| diff --git a/src/heap/heap.h b/src/heap/heap.h
|
| index f1cf40818787b3fa4703ff54f539e4f11c05d40a..ff4346ba9bca2e8e9c0772003763ef188747395d 100644
|
| --- a/src/heap/heap.h
|
| +++ b/src/heap/heap.h
|
| @@ -716,13 +716,23 @@ class Heap {
|
| MUST_USE_RESULT AllocationResult
|
| CopyJSObject(JSObject* source, AllocationSite* site = NULL);
|
|
|
| - // This method assumes overallocation of one word. It will store a filler
|
| - // before the object if the given object is not double aligned, otherwise
|
| - // it will place the filler after the object.
|
| - MUST_USE_RESULT HeapObject* EnsureAligned(HeapObject* object, int size,
|
| - AllocationAlignment alignment);
|
| -
|
| - MUST_USE_RESULT HeapObject* PrecedeWithFiller(HeapObject* object);
|
| + // Calculates the maximum amount of filler that could be required by the
|
| + // given alignment.
|
| + static int GetMaximumFillToAlign(AllocationAlignment alignment);
|
| + // Calculates the actual amount of filler required for a given address at the
|
| + // given alignment.
|
| + static int GetFillToAlign(Address address, AllocationAlignment alignment);
|
| +
|
| + // Creates a filler object and returns a heap object immediately after it.
|
| + MUST_USE_RESULT HeapObject* PrecedeWithFiller(HeapObject* object,
|
| + int filler_size);
|
| + // Creates a filler object if needed for alignment and returns a heap object
|
| + // immediately after it. If any space is left after the returned object,
|
| + // another filler object is created so the over allocated memory is iterable.
|
| + MUST_USE_RESULT HeapObject* AlignWithFiller(HeapObject* object,
|
| + int object_size,
|
| + int allocation_size,
|
| + AllocationAlignment alignment);
|
|
|
| // Clear the Instanceof cache (used when a prototype changes).
|
| inline void ClearInstanceofCache();
|
|
|