/third_party/node/deps/v8/src/heap/ |
D | memory-chunk.cc | 21 void MemoryChunk::DiscardUnusedMemory(Address addr, size_t size) { in DiscardUnusedMemory() 33 void MemoryChunk::InitializationMemoryFence() { in InitializationMemoryFence() 45 void MemoryChunk::DecrementWriteUnprotectCounterAndMaybeSetPermissions( in DecrementWriteUnprotectCounterAndMaybeSetPermissions() 49 DCHECK(IsFlagSet(MemoryChunk::IS_EXECUTABLE)); in DecrementWriteUnprotectCounterAndMaybeSetPermissions() 72 void MemoryChunk::SetReadable() { in SetReadable() 76 void MemoryChunk::SetReadAndExecutable() { in SetReadAndExecutable() 82 void MemoryChunk::SetCodeModificationPermissions() { in SetCodeModificationPermissions() 83 DCHECK(IsFlagSet(MemoryChunk::IS_EXECUTABLE)); in SetCodeModificationPermissions() 101 MemoryChunk::GetCodeModificationPermission())); in SetCodeModificationPermissions() 105 void MemoryChunk::SetDefaultCodePermissions() { in SetDefaultCodePermissions() [all …]
|
D | heap-write-barrier-inl.h | 44 struct MemoryChunk { struct 53 V8_INLINE static heap_internals::MemoryChunk* FromHeapObject( in FromHeapObject() argument 56 return reinterpret_cast<MemoryChunk*>(object.ptr() & ~kPageAlignmentMask); in FromHeapObject() 89 heap_internals::MemoryChunk* value_chunk = in GenerationalBarrierInternal() argument 90 heap_internals::MemoryChunk::FromHeapObject(value); in GenerationalBarrierInternal() 91 heap_internals::MemoryChunk* object_chunk = in GenerationalBarrierInternal() 92 heap_internals::MemoryChunk::FromHeapObject(object); in GenerationalBarrierInternal() 105 heap_internals::MemoryChunk* value_chunk = in GenerationalEphemeronKeyBarrierInternal() 106 heap_internals::MemoryChunk::FromHeapObject(value); in GenerationalEphemeronKeyBarrierInternal() 107 heap_internals::MemoryChunk* table_chunk = in GenerationalEphemeronKeyBarrierInternal() [all …]
|
D | remembered-set.h | 31 static void Insert(SlotSet* slot_set, MemoryChunk* chunk, Address slot_addr) { in Insert() 38 static int Iterate(SlotSet* slot_set, MemoryChunk* chunk, Callback callback, in Iterate() 48 static void Remove(SlotSet* slot_set, MemoryChunk* chunk, Address slot_addr) { in Remove() 55 static void RemoveRange(SlotSet* slot_set, MemoryChunk* chunk, Address start, in RemoveRange() 67 static void CheckNoneInRange(SlotSet* slot_set, MemoryChunk* chunk, in CheckNoneInRange() 93 static void Insert(MemoryChunk* chunk, Address slot_addr) { in Insert() 104 static bool Contains(MemoryChunk* chunk, Address slot_addr) { in Contains() 114 static void CheckNoneInRange(MemoryChunk* chunk, Address start, Address end) { in CheckNoneInRange() 122 static void Remove(MemoryChunk* chunk, Address slot_addr) { in Remove() 130 static void RemoveRange(MemoryChunk* chunk, Address start, Address end, in RemoveRange() [all …]
|
D | memory-allocator.h | 53 void AddMemoryChunkSafe(MemoryChunk* chunk) { in AddMemoryChunkSafe() 61 MemoryChunk* TryGetPooledMemoryChunkSafe() { in TryGetPooledMemoryChunkSafe() 67 MemoryChunk* chunk = GetMemoryChunkSafe(ChunkQueueType::kPooled); in TryGetPooledMemoryChunkSafe() 107 void AddMemoryChunkSafe(ChunkQueueType type, MemoryChunk* chunk) { in AddMemoryChunkSafe() 112 MemoryChunk* GetMemoryChunkSafe(ChunkQueueType type) { in GetMemoryChunkSafe() 115 MemoryChunk* chunk = chunks_[type].back(); in GetMemoryChunkSafe() 131 std::vector<MemoryChunk*> chunks_[ChunkQueueType::kNumberOfChunkQueues]; 200 MemoryChunk* chunk); 232 bool IsMemoryChunkExecutable(MemoryChunk* chunk) { in IsMemoryChunkExecutable() 311 void PreFreeMemory(MemoryChunk* chunk); [all …]
|
D | memory-chunk.h | 32 class MemoryChunk : public BasicMemoryChunk { 56 MemoryChunk(Heap* heap, BaseSpace* space, size_t size, Address area_start, 61 static MemoryChunk* FromAddress(Address a) { in FromAddress() 66 static MemoryChunk* FromHeapObject(HeapObject o) { in FromHeapObject() 70 static MemoryChunk* cast(BasicMemoryChunk* chunk) { in cast() 72 return static_cast<MemoryChunk*>(chunk); in cast() 75 static const MemoryChunk* cast(const BasicMemoryChunk* chunk) { in cast() 77 return static_cast<const MemoryChunk*>(chunk); in cast() 86 ExternalBackingStoreType type, MemoryChunk* from, MemoryChunk* to, 201 heap::ListNode<MemoryChunk>& list_node() { return list_node_; } in list_node() [all …]
|
D | mark-compact.h | 38 MarkBitCellIterator(const MemoryChunk* chunk, Bitmap* bitmap) in MarkBitCellIterator() 90 const MemoryChunk* chunk_; 109 inline iterator(const MemoryChunk* chunk, Bitmap* bitmap, Address start); 127 const MemoryChunk* const chunk_; 138 LiveObjectRange(const MemoryChunk* chunk, Bitmap* bitmap) in LiveObjectRange() 150 const MemoryChunk* const chunk_; 167 static bool VisitBlackObjects(MemoryChunk* chunk, MarkingState* state, 174 static void VisitBlackObjectsNoFail(MemoryChunk* chunk, MarkingState* state, 181 static void VisitGreyObjectsNoFail(MemoryChunk* chunk, MarkingState* state, 186 static void RecomputeLiveBytes(MemoryChunk* chunk, MarkingState* state); [all …]
|
D | memory-allocator.cc | 145 MemoryChunk* chunk = nullptr; in PerformFreeMemoryOnQueuedNonRegularChunks() 154 MemoryChunk* chunk = nullptr; in PerformFreeMemoryOnQueuedChunks() 163 bool pooled = chunk->IsFlagSet(MemoryChunk::POOLED); in PerformFreeMemoryOnQueuedChunks() 350 MemoryChunk::kAlignment); in AllocateUninitializedChunk() 358 AllocateAlignedMemory(chunk_size, area_size, MemoryChunk::kAlignment, in AllocateUninitializedChunk() 407 if (chunk->IsFlagSet(MemoryChunk::IS_EXECUTABLE)) { in PartialFreeMemory() 435 DCHECK(!chunk->IsFlagSet(MemoryChunk::UNREGISTERED)); in UnregisterBasicMemoryChunk() 446 UnregisterExecutableMemoryChunk(static_cast<MemoryChunk*>(chunk)); in UnregisterBasicMemoryChunk() 449 static_cast<MemoryChunk*>(chunk)); in UnregisterBasicMemoryChunk() 451 chunk->SetFlag(MemoryChunk::UNREGISTERED); in UnregisterBasicMemoryChunk() [all …]
|
D | spaces.h | 175 virtual MemoryChunk* first_page() { return memory_chunk_list_.front(); } in first_page() 176 virtual MemoryChunk* last_page() { return memory_chunk_list_.back(); } in last_page() 178 virtual const MemoryChunk* first_page() const { in first_page() 181 virtual const MemoryChunk* last_page() const { in last_page() 185 heap::List<MemoryChunk>& memory_chunk_list() { return memory_chunk_list_; } in memory_chunk_list() 187 virtual Page* InitializePage(MemoryChunk* chunk) { in InitializePage() 204 heap::List<MemoryChunk> memory_chunk_list_; 220 class Page : public MemoryChunk { 224 MainThreadFlags(MemoryChunk::POINTERS_TO_HERE_ARE_INTERESTING) | 225 MainThreadFlags(MemoryChunk::POINTERS_FROM_HERE_ARE_INTERESTING) | [all …]
|
D | memory-chunk-inl.h | 14 void MemoryChunk::IncrementExternalBackingStoreBytes( in IncrementExternalBackingStoreBytes() 22 void MemoryChunk::DecrementExternalBackingStoreBytes( in DecrementExternalBackingStoreBytes() 30 void MemoryChunk::MoveExternalBackingStoreBytes(ExternalBackingStoreType type, in MoveExternalBackingStoreBytes() 31 MemoryChunk* from, in MoveExternalBackingStoreBytes() 32 MemoryChunk* to, in MoveExternalBackingStoreBytes() 42 AllocationSpace MemoryChunk::owner_identity() const { in owner_identity()
|
D | invalidated-slots.h | 34 static InvalidatedSlotsFilter OldToOld(MemoryChunk* chunk); 35 static InvalidatedSlotsFilter OldToNew(MemoryChunk* chunk); 40 explicit InvalidatedSlotsFilter(MemoryChunk* chunk, 62 static InvalidatedSlotsCleanup OldToNew(MemoryChunk* chunk); 63 static InvalidatedSlotsCleanup NoCleanup(MemoryChunk* chunk); 65 explicit InvalidatedSlotsCleanup(MemoryChunk* chunk,
|
D | invalidated-slots.cc | 15 InvalidatedSlotsFilter InvalidatedSlotsFilter::OldToOld(MemoryChunk* chunk) { in OldToOld() 20 InvalidatedSlotsFilter InvalidatedSlotsFilter::OldToNew(MemoryChunk* chunk) { in OldToNew() 26 MemoryChunk* chunk, InvalidatedSlots* invalidated_slots, in InvalidatedSlotsFilter() 47 InvalidatedSlotsCleanup InvalidatedSlotsCleanup::OldToNew(MemoryChunk* chunk) { in OldToNew() 51 InvalidatedSlotsCleanup InvalidatedSlotsCleanup::NoCleanup(MemoryChunk* chunk) { in NoCleanup() 56 MemoryChunk* chunk, InvalidatedSlots* invalidated_slots) { in InvalidatedSlotsCleanup()
|
D | basic-memory-chunk.cc | 19 heap_internals::MemoryChunk::kIsExecutableBit); 21 heap_internals::MemoryChunk::kMarkingBit); 23 heap_internals::MemoryChunk::kFromPageBit); 25 heap_internals::MemoryChunk::kToPageBit); 27 heap_internals::MemoryChunk::kReadOnlySpaceBit); 29 heap_internals::MemoryChunk::kFlagsOffset); 31 heap_internals::MemoryChunk::kHeapOffset);
|
D | new-spaces.cc | 21 Page* SemiSpace::InitializePage(MemoryChunk* chunk) { in InitializePage() 23 chunk->SetFlag(in_to_space ? MemoryChunk::TO_PAGE : MemoryChunk::FROM_PAGE); in InitializePage() 44 MemoryChunk* current_page = first_page(); in EnsureCurrentCapacity() 59 MemoryChunk* next_current = current_page->list_node().next(); in EnsureCurrentCapacity() 152 MemoryChunk* chunk = memory_chunk_list_.front(); in Uncommit() 211 MemoryChunk* last = last_page(); in RewindPages() 241 page->ClearFlag(MemoryChunk::FROM_PAGE); in FixPagesFlags() 242 page->SetFlag(MemoryChunk::TO_PAGE); in FixPagesFlags() 243 page->ClearFlag(MemoryChunk::NEW_SPACE_BELOW_AGE_MARK); in FixPagesFlags() 247 page->SetFlag(MemoryChunk::FROM_PAGE); in FixPagesFlags() [all …]
|
D | memory-chunk-layout.cc | 18 return ::RoundUp(MemoryChunk::kHeaderSize + Bitmap::kSize, in CodePageGuardStartOffset() 35 return MemoryChunk::kPageSize - in ObjectEndOffsetInCodePage() 45 return RoundUp(MemoryChunk::kHeaderSize + Bitmap::kSize, kDoubleSize); in ObjectStartOffsetInDataPage() 57 size_t memory = MemoryChunk::kPageSize - ObjectStartOffsetInDataPage(); in AllocatableMemoryInDataPage()
|
D | large-spaces.cc | 36 : MemoryChunk(heap, space, chunk_size, area_start, area_end, in LargePage() 44 SetFlag(MemoryChunk::LARGE_PAGE); in LargePage() 48 LargePage* LargePage::Initialize(Heap* heap, MemoryChunk* chunk, in Initialize() 58 page->SetFlag(MemoryChunk::LARGE_PAGE); in Initialize() 255 MemoryChunk* chunk = MemoryChunk::FromHeapObject(obj); in ClearMarkingStateOfLiveObjects() 267 current += MemoryChunk::kPageSize) { in InsertChunkMapEntries() 275 current += MemoryChunk::kPageSize) { in RemoveChunkMapEntries() 283 DCHECK(page->IsFlagSet(MemoryChunk::FROM_PAGE)); in PromoteNewLargeObject() 284 DCHECK(!page->IsFlagSet(MemoryChunk::TO_PAGE)); in PromoteNewLargeObject() 288 page->ClearFlag(MemoryChunk::FROM_PAGE); in PromoteNewLargeObject() [all …]
|
D | concurrent-marking.h | 30 class MemoryChunk; variable 39 std::unordered_map<MemoryChunk*, MemoryChunkData, MemoryChunk::Hasher>; 86 void ClearMemoryChunkData(MemoryChunk* chunk);
|
D | scavenger.cc | 45 DCHECK(MemoryChunk::FromHeapObject(host)->InNewLargeObjectSpace()); in VisitMapPointer() 125 MemoryChunk* chunk = MemoryChunk::FromHeapObject(host); in HandleSlot() 141 !MemoryChunk::FromHeapObject(target)->IsFlagSet( in HandleSlot() 142 MemoryChunk::IS_EXECUTABLE)); in HandleSlot() 148 MemoryChunk::FromHeapObject(host), slot.address()); in HandleSlot() 193 std::vector<std::pair<ParallelWorkItem, MemoryChunk*>> memory_chunks, in JobTask() 312 std::vector<std::pair<ParallelWorkItem, MemoryChunk*>> memory_chunks; in CollectGarbage() 314 heap_, [&memory_chunks](MemoryChunk* chunk) { in CollectGarbage() 431 MemoryChunk* chunk; in CollectGarbage() 444 heap_, [](MemoryChunk* chunk) { in CollectGarbage() [all …]
|
D | heap-write-barrier.cc | 105 MemoryChunk* chunk = MemoryChunk::FromHeapObject(object); in IsImmortalImmovableHeapObject() 109 if (!chunk->IsFlagSet(MemoryChunk::NEVER_EVACUATE)) return false; in IsImmortalImmovableHeapObject()
|
D | mark-compact-inl.h | 66 MemoryChunk* source_page = MemoryChunk::FromHeapObject(object); in RecordSlot() 72 void MarkCompactCollector::RecordSlot(MemoryChunk* source_page, in RecordSlot() 77 target_page->IsFlagSet(MemoryChunk::IS_EXECUTABLE)) { in RecordSlot() 127 LiveObjectRange<mode>::iterator::iterator(const MemoryChunk* chunk, in iterator()
|
D | large-spaces.h | 27 class LargePage : public MemoryChunk { 40 return static_cast<LargePage*>(MemoryChunk::FromHeapObject(o)); in FromHeapObject() 57 static LargePage* Initialize(Heap* heap, MemoryChunk* chunk, 63 STATIC_ASSERT(sizeof(LargePage) <= MemoryChunk::kHeaderSize);
|
D | mark-compact.cc | 99 const MemoryChunk* chunk) = 0; 229 const MemoryChunk* chunk) override { in bitmap() 662 MemoryChunk::FromHeapObject(obj))); in VerifyMarkbitsAreClean() 839 !p->IsFlagSet(MemoryChunk::FORCE_EVACUATION_CANDIDATE_FOR_TESTING)); in CollectEvacuationCandidates() 863 if (p->IsFlagSet(MemoryChunk::PINNED)) { in CollectEvacuationCandidates() 864 p->ClearFlag(MemoryChunk::PINNED); in CollectEvacuationCandidates() 875 if (p->IsFlagSet(MemoryChunk::FORCE_EVACUATION_CANDIDATE_FOR_TESTING)) { in CollectEvacuationCandidates() 878 p->ClearFlag(MemoryChunk::FORCE_EVACUATION_CANDIDATE_FOR_TESTING); in CollectEvacuationCandidates() 1295 MemoryChunk::FromHeapObject(host), slot.address()); in MarkObject() 1527 MemoryChunk* chunk = MemoryChunk::FromHeapObject(host); in RecordMigratedSlot() [all …]
|
D | scavenger.h | 88 using EmptyChunksList = ::heap::base::Worklist<MemoryChunk*, 64>; 97 void ScavengePage(MemoryChunk* page); 124 void AddPageToSweeperIfNecessary(MemoryChunk* page); 273 std::vector<std::pair<ParallelWorkItem, MemoryChunk*>> memory_chunks, 287 std::vector<std::pair<ParallelWorkItem, MemoryChunk*>> memory_chunks_;
|
D | heap-inl.h | 328 return page->IsFlagSet(MemoryChunk::NEW_SPACE_BELOW_AGE_MARK) && in ShouldBePromoted() 405 chunk->IsFlagSet(MemoryChunk::PAGE_NEW_NEW_PROMOTION)); in UpdateAllocationSite() 407 chunk->IsFlagSet(MemoryChunk::PAGE_NEW_OLD_PROMOTION)); in UpdateAllocationSite() 608 DCHECK(page->IsFlagSet(MemoryChunk::IS_EXECUTABLE)); in CodeSpaceMemoryModificationScope() 622 DCHECK(page->IsFlagSet(MemoryChunk::IS_EXECUTABLE)); in ~CodeSpaceMemoryModificationScope() 660 chunk_->IsFlagSet(MemoryChunk::IS_EXECUTABLE)) { in CodePageMemoryModificationScope() 664 MemoryChunk::cast(chunk_)->SetCodeModificationPermissions(); in CodePageMemoryModificationScope() 670 MemoryChunk::cast(chunk_)->SetDefaultCodePermissions(); in ~CodePageMemoryModificationScope()
|
D | concurrent-allocator.cc | 30 static_cast<int>(MemoryChunk::kPageSize - in RunInternal() 88 optional_scope.emplace(MemoryChunk::FromAddress(lab_.top())); in FreeLinearAllocationArea() 98 optional_scope.emplace(MemoryChunk::FromAddress(lab_.top())); in MakeLinearAllocationAreaIterable()
|
/third_party/node/deps/v8/src/execution/ |
D | isolate-utils-inl.h | 52 heap_internals::MemoryChunk* chunk = in GetHeapFromWritableObject() 53 heap_internals::MemoryChunk::FromHeapObject(object); in GetHeapFromWritableObject() 80 heap_internals::MemoryChunk* chunk = in GetIsolateFromHeapObject() 81 heap_internals::MemoryChunk::FromHeapObject(object); in GetIsolateFromHeapObject()
|