summaryrefslogtreecommitdiff
path: root/deps/v8/src/heap/basic-memory-chunk.cc
diff options
context:
space:
mode:
authorMichaël Zasso <targos@protonmail.com>2022-04-19 09:00:36 +0200
committerMichaël Zasso <targos@protonmail.com>2022-04-21 11:54:15 +0200
commit6bbc5596b13828a5274a8aeaea4929bdc22168a4 (patch)
tree3fa11feb9240c699aff627e049d33c358a7320a4 /deps/v8/src/heap/basic-memory-chunk.cc
parent0d58c0be3e1c3013959c02d42a2a2f21dd31c5f8 (diff)
downloadnode-new-6bbc5596b13828a5274a8aeaea4929bdc22168a4.tar.gz
deps: update V8 to 10.2.154.2
PR-URL: https://github.com/nodejs/node/pull/42740 Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Richard Lau <rlau@redhat.com>
Diffstat (limited to 'deps/v8/src/heap/basic-memory-chunk.cc')
-rw-r--r--deps/v8/src/heap/basic-memory-chunk.cc40
1 files changed, 14 insertions, 26 deletions
diff --git a/deps/v8/src/heap/basic-memory-chunk.cc b/deps/v8/src/heap/basic-memory-chunk.cc
index c62fa7f49d..a456d98cd7 100644
--- a/deps/v8/src/heap/basic-memory-chunk.cc
+++ b/deps/v8/src/heap/basic-memory-chunk.cc
@@ -9,6 +9,7 @@
#include "src/heap/heap-write-barrier-inl.h"
#include "src/heap/incremental-marking.h"
#include "src/objects/heap-object.h"
+#include "src/utils/allocation.h"
namespace v8 {
namespace internal {
@@ -49,32 +50,19 @@ constexpr BasicMemoryChunk::MainThreadFlags BasicMemoryChunk::kIsLargePageMask;
constexpr BasicMemoryChunk::MainThreadFlags
BasicMemoryChunk::kSkipEvacuationSlotsRecordingMask;
-BasicMemoryChunk::BasicMemoryChunk(size_t size, Address area_start,
- Address area_end) {
- size_ = size;
- area_start_ = area_start;
- area_end_ = area_end;
-}
-
-// static
-BasicMemoryChunk* BasicMemoryChunk::Initialize(Heap* heap, Address base,
- size_t size, Address area_start,
- Address area_end,
- BaseSpace* owner,
- VirtualMemory reservation) {
- BasicMemoryChunk* chunk = FromAddress(base);
- DCHECK_EQ(base, chunk->address());
- new (chunk) BasicMemoryChunk(size, area_start, area_end);
-
- chunk->heap_ = heap;
- chunk->set_owner(owner);
- chunk->reservation_ = std::move(reservation);
- chunk->high_water_mark_ = static_cast<intptr_t>(area_start - base);
- chunk->allocated_bytes_ = chunk->area_size();
- chunk->wasted_memory_ = 0;
- chunk->marking_bitmap<AccessMode::NON_ATOMIC>()->Clear();
-
- return chunk;
+BasicMemoryChunk::BasicMemoryChunk(Heap* heap, BaseSpace* space,
+ size_t chunk_size, Address area_start,
+ Address area_end, VirtualMemory reservation)
+ : size_(chunk_size),
+ heap_(heap),
+ area_start_(area_start),
+ area_end_(area_end),
+ allocated_bytes_(area_end - area_start),
+ wasted_memory_(0),
+ high_water_mark_(area_start - reinterpret_cast<Address>(this)),
+ owner_(space),
+ reservation_(std::move(reservation)) {
+ marking_bitmap<AccessMode::NON_ATOMIC>()->Clear();
}
bool BasicMemoryChunk::InOldSpace() const {