| Index: src/heap/heap.h
|
| diff --git a/src/heap/heap.h b/src/heap/heap.h
|
| index 540185731cc4eb02d3c8d21ddb47f870253a8500..fd74ff2f498f40d151399fa71cfd16d7af3ba1fd 100644
|
| --- a/src/heap/heap.h
|
| +++ b/src/heap/heap.h
|
| @@ -994,10 +994,6 @@ class Heap {
|
| roots_[kEmptyScriptRootIndex] = script;
|
| }
|
|
|
| - void public_set_store_buffer_top(Address* top) {
|
| - roots_[kStoreBufferTopRootIndex] = reinterpret_cast<Smi*>(top);
|
| - }
|
| -
|
| void public_set_materialized_objects(FixedArray* objects) {
|
| roots_[kMaterializedObjectsRootIndex] = objects;
|
| }
|
| @@ -1005,10 +1001,6 @@ class Heap {
|
| // Generated code can embed this address to get access to the roots.
|
| Object** roots_array_start() { return roots_; }
|
|
|
| - Address* store_buffer_top_address() {
|
| - return reinterpret_cast<Address*>(&roots_[kStoreBufferTopRootIndex]);
|
| - }
|
| -
|
| void CheckHandleCount();
|
|
|
| // Number of "runtime allocations" done so far.
|
| @@ -1029,12 +1021,6 @@ class Heap {
|
| return index < OBJECT_STATS_COUNT ? object_sizes_last_time_[index] : 0;
|
| }
|
|
|
| - // Write barrier support for address[offset] = o.
|
| - INLINE(void RecordWrite(Address address, int offset));
|
| -
|
| - // Write barrier support for address[start : start + len[ = o.
|
| - INLINE(void RecordWrites(Address address, int start, int len));
|
| -
|
| inline HeapState gc_state() { return gc_state_; }
|
|
|
| inline bool IsInGCPostProcessing() { return gc_post_processing_depth_ > 0; }
|
| @@ -1094,10 +1080,6 @@ class Heap {
|
|
|
| void IncrementDeferredCount(v8::Isolate::UseCounterFeature feature);
|
|
|
| - ExternalStringTable* external_string_table() {
|
| - return &external_string_table_;
|
| - }
|
| -
|
| bool concurrent_sweeping_enabled() { return concurrent_sweeping_enabled_; }
|
|
|
| inline bool OldGenerationAllocationLimitReached();
|
| @@ -1307,7 +1289,9 @@ class Heap {
|
| return &mark_compact_collector_;
|
| }
|
|
|
| - StoreBuffer* store_buffer() { return &store_buffer_; }
|
| + ExternalStringTable* external_string_table() {
|
| + return &external_string_table_;
|
| + }
|
|
|
| // ===========================================================================
|
| // Inline allocation. ========================================================
|
| @@ -1365,6 +1349,20 @@ class Heap {
|
| ObjectSlotCallback callback);
|
|
|
| // ===========================================================================
|
| + // Store buffer API. =========================================================
|
| + // ===========================================================================
|
| +
|
| + // Write barrier support for address[offset] = o.
|
| + INLINE(void RecordWrite(Address address, int offset));
|
| +
|
| + // Write barrier support for address[start : start + len[ = o.
|
| + INLINE(void RecordWrites(Address address, int start, int len));
|
| +
|
| + Address* store_buffer_top_address() {
|
| + return reinterpret_cast<Address*>(&roots_[kStoreBufferTopRootIndex]);
|
| + }
|
| +
|
| + // ===========================================================================
|
| // Incremental marking API. ==================================================
|
| // ===========================================================================
|
|
|
| @@ -1683,6 +1681,8 @@ class Heap {
|
| ROOT_LIST(ROOT_ACCESSOR)
|
| #undef ROOT_ACCESSOR
|
|
|
| + StoreBuffer* store_buffer() { return &store_buffer_; }
|
| +
|
| void set_current_gc_flags(int flags) {
|
| current_gc_flags_ = flags;
|
| DCHECK(!ShouldFinalizeIncrementalMarking() ||
|
| @@ -2411,6 +2411,7 @@ class Heap {
|
| friend class MarkCompactMarkingVisitor;
|
| friend class MapCompact;
|
| friend class Page;
|
| + friend class StoreBuffer;
|
|
|
| // Used in cctest.
|
| friend class HeapTester;
|
|
|