aboutsummaryrefslogtreecommitdiff
path: root/deps/v8/src/heap/read-only-heap.cc
blob: a2c086fc0ad7c49fc158b0aa5adabe6b8b05c4fe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// Copyright 2019 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "src/heap/read-only-heap.h"

#include "src/heap/spaces.h"

namespace v8 {
namespace internal {

// static
ReadOnlyHeap* ReadOnlyHeap::GetOrCreateReadOnlyHeap(Heap* heap) {
  return new ReadOnlyHeap(new ReadOnlySpace(heap));
}

void ReadOnlyHeap::MaybeDeserialize(Isolate* isolate,
                                    ReadOnlyDeserializer* des) {
  des->DeserializeInto(isolate);
}

void ReadOnlyHeap::OnHeapTearDown() {
  delete read_only_space_;
  delete this;
}

}  // namespace internal
}  // namespace v8