| Index: src/mark-compact.h
|
| diff --git a/src/mark-compact.h b/src/mark-compact.h
|
| index a3df1e1edc46dc2306b93341aee72a36d87e9bb7..109d892e035215676d1f18cd5b723f98b1077571 100644
|
| --- a/src/mark-compact.h
|
| +++ b/src/mark-compact.h
|
| @@ -109,7 +109,9 @@ class MarkCompactCollector {
|
| // Object* that will be the object after forwarding. There is a separate
|
| // allocation function for each (compactable) space based on the location
|
| // of the object before compaction.
|
| - typedef Object* (*AllocationFunction)(HeapObject* object, int object_size);
|
| + typedef Object* (*AllocationFunction)(Heap* heap,
|
| + HeapObject* object,
|
| + int object_size);
|
|
|
| // Type of functions to encode the forwarding address for an object.
|
| // Given the object, its size, and the new (non-failure) object it will be
|
| @@ -119,7 +121,8 @@ class MarkCompactCollector {
|
| // page as input, and is updated to contain the offset to be used for the
|
| // next live object in the same page. For spaces using a different
|
| // encoding (ie, contiguous spaces), the offset parameter is ignored.
|
| - typedef void (*EncodingFunction)(HeapObject* old_object,
|
| + typedef void (*EncodingFunction)(Heap* heap,
|
| + HeapObject* old_object,
|
| int object_size,
|
| Object* new_object,
|
| int* offset);
|
| @@ -182,6 +185,8 @@ class MarkCompactCollector {
|
| static const uint32_t kSingleFreeEncoding = 0;
|
| static const uint32_t kMultiFreeEncoding = 1;
|
|
|
| + inline Heap* heap() const { return heap_; }
|
| +
|
| private:
|
| MarkCompactCollector();
|
|
|
|
|