Chromium Code Reviews| Index: src/heap/heap.h |
| diff --git a/src/heap/heap.h b/src/heap/heap.h |
| index 23159734cf595ad3f6e944e96fe1f87fcc93d913..a10a416ad8fc27b194554b630a6de495d9185039 100644 |
| --- a/src/heap/heap.h |
| +++ b/src/heap/heap.h |
| @@ -700,16 +700,23 @@ class Heap { |
| inline void FinalizeExternalString(String* string); |
| // Initialize a filler object to keep the ability to iterate over the heap |
| - // when shortening objects. |
| + // when introducing gaps within pages. |
| void CreateFillerObjectAt(Address addr, int size); |
| bool CanMoveObjectStart(HeapObject* object); |
| + // Maintain consistency of live bytes during incremental marking. |
|
Hannes Payer (out of office)
2014/08/05 10:45:07
Move the enum before the comment and describe in a
Michael Starzinger
2014/08/05 11:01:06
Done.
|
| enum InvocationMode { FROM_GC, FROM_MUTATOR }; |
| - |
| - // Maintain marking consistency for IncrementalMarking. |
| void AdjustLiveBytes(Address address, int by, InvocationMode mode); |
| + // Trim the given array from the left. Note that this relocates the object |
| + // start and hence is only valid if there is only a single reference to it. |
| + FixedArrayBase* LeftTrimFixedArray(FixedArrayBase* obj, int elements_to_trim); |
| + |
| + // Trim the given array from the right. |
| + template<Heap::InvocationMode mode> |
| + void RightTrimFixedArray(FixedArrayBase* obj, int elements_to_trim); |
| + |
| // Converts the given boolean condition to JavaScript boolean value. |
| inline Object* ToBoolean(bool condition); |