Lines Matching defs:threadId
49 inline void NonMovableMarker::MarkValue(uint32_t threadId, ObjectSlot &slot, Region *rootRegion, bool needBarrier)
63 MarkObject(threadId, obj);
65 RecordWeakReference(threadId, reinterpret_cast<JSTaggedType *>(slot.SlotAddress()), rootRegion);
77 inline void NonMovableMarker::MarkObject(uint32_t threadId, TaggedObject *object)
99 workManager_->Push(threadId, object);
103 inline void NonMovableMarker::HandleRoots(uint32_t threadId, [[maybe_unused]] Root type, ObjectSlot slot)
107 MarkObject(threadId, value.GetTaggedObject());
111 inline void NonMovableMarker::HandleRangeRoots(uint32_t threadId, [[maybe_unused]] Root type, ObjectSlot start,
120 MarkObject(threadId, value.GetTaggedObject());
132 inline void NonMovableMarker::HandleNewToEdenRSet(uint32_t threadId, Region *region)
135 region->IterateAllNewToEdenBits([this, threadId, region](void *mem) -> bool {
140 RecordWeakReference(threadId, reinterpret_cast<JSTaggedType *>(mem), region);
142 MarkObject(threadId, value.GetTaggedObject());
149 inline void NonMovableMarker::HandleOldToNewRSet(uint32_t threadId, Region *region)
152 region->IterateAllOldToNewBits([this, threadId, ®ion, isEdenMark](void *mem) -> bool {
159 RecordWeakReference(threadId, reinterpret_cast<JSTaggedType *>(mem), region);
165 MarkObject(threadId, value.GetTaggedObject());
168 MarkObject(threadId, value.GetTaggedObject());
175 inline void NonMovableMarker::RecordWeakReference(uint32_t threadId, JSTaggedType *ref, Region *objectRegion)
184 workManager_->PushWeakReference(threadId, ref);
207 inline void MovableMarker::HandleRoots(uint32_t threadId, [[maybe_unused]] Root type, ObjectSlot slot)
211 MarkObject(threadId, value.GetTaggedObject(), slot);
215 inline void MovableMarker::HandleRangeRoots(uint32_t threadId, [[maybe_unused]] Root type, ObjectSlot start,
223 RecordWeakReference(threadId, reinterpret_cast<JSTaggedType *>(slot.SlotAddress()), objectRegion);
225 MarkObject(threadId, value.GetTaggedObject(), slot);
239 inline void MovableMarker::HandleNewToEdenRSet(uint32_t threadId, Region *region)
241 region->IterateAllNewToEdenBits([this, threadId, ®ion](void *mem) -> bool {
246 RecordWeakReference(threadId, reinterpret_cast<JSTaggedType *>(mem), region);
249 auto slotStatus = MarkObject(threadId, value.GetTaggedObject(), slot);
258 inline void MovableMarker::HandleOldToNewRSet(uint32_t threadId, Region *region)
260 region->IterateAllOldToNewBits([this, threadId, ®ion](void *mem) -> bool {
265 RecordWeakReference(threadId, reinterpret_cast<JSTaggedType *>(mem), region);
268 auto slotStatus = MarkObject(threadId, value.GetTaggedObject(), slot);
277 inline uintptr_t MovableMarker::AllocateDstSpace(uint32_t threadId, size_t size, bool &shouldPromote)
281 forwardAddress = workManager_->GetTlabAllocator(threadId)->Allocate(size, COMPRESS_SPACE);
288 forwardAddress = workManager_->GetTlabAllocator(threadId)->Allocate(size, SEMI_SPACE);
290 forwardAddress = workManager_->GetTlabAllocator(threadId)->Allocate(size, COMPRESS_SPACE);
302 inline void MovableMarker::UpdateForwardAddressIfSuccess(uint32_t threadId, TaggedObject *object, JSHClass *klass,
305 workManager_->IncreaseAliveSize(threadId, size);
307 workManager_->IncreasePromotedSize(threadId, size);
312 workManager_->Push(threadId, reinterpret_cast<TaggedObject *>(toAddress));
369 inline void SemiGCMarker::MarkValue(uint32_t threadId, TaggedObject *root, ObjectSlot slot)
375 RecordWeakReference(threadId, reinterpret_cast<JSTaggedType *>(slot.SlotAddress()), rootRegion);
378 auto slotStatus = MarkObject(threadId, value.GetTaggedObject(), slot);
381 workManager_->PushSlotNeedUpdate(threadId, waitUpdate);
386 inline SlotStatus SemiGCMarker::MarkObject(uint32_t threadId, TaggedObject *object, ObjectSlot slot)
400 return EvacuateObject(threadId, object, markWord, slot);
403 inline SlotStatus SemiGCMarker::EvacuateObject(uint32_t threadId, TaggedObject *object, const MarkWord &markWord,
410 uintptr_t forwardAddress = AllocateDstSpace(threadId, size, isPromoted);
417 UpdateForwardAddressIfSuccess(threadId, object, klass, forwardAddress, size, slot, isPromoted);
430 inline void SemiGCMarker::RecordWeakReference(uint32_t threadId, JSTaggedType *ref,
436 workManager_->PushWeakReference(threadId, ref);
440 inline void CompressGCMarker::MarkValue(uint32_t threadId, ObjectSlot slot)
446 RecordWeakReference(threadId, reinterpret_cast<JSTaggedType *>(slot.SlotAddress()));
449 MarkObject(threadId, value.GetTaggedObject(), slot);
453 inline SlotStatus CompressGCMarker::MarkObject(uint32_t threadId, TaggedObject *object, ObjectSlot slot)
458 workManager_->Push(threadId, object);
472 return EvacuateObject(threadId, object, markWord, slot);
499 inline SlotStatus CompressGCMarker::EvacuateObject(uint32_t threadId, TaggedObject *object, const MarkWord &markWord,
504 uintptr_t forwardAddress = AllocateForwardAddress(threadId, size, klass, object);
511 UpdateForwardAddressIfSuccess(threadId, object, klass, forwardAddress, size, slot);
526 inline void CompressGCMarker::RecordWeakReference(uint32_t threadId, JSTaggedType *ref,
529 workManager_->PushWeakReference(threadId, ref);