Lines Matching refs:region

24 #include "ecmascript/mem/region-inl.h"
59 // Object in fresh region should only mark from JS Thread in barrier, or MarkObject in MarkRoots.
132 inline void NonMovableMarker::HandleNewToEdenRSet(uint32_t threadId, Region *region)
134 ASSERT(region->InYoungSpace());
135 region->IterateAllNewToEdenBits([this, threadId, region](void *mem) -> bool {
140 RecordWeakReference(threadId, reinterpret_cast<JSTaggedType *>(mem), region);
149 inline void NonMovableMarker::HandleOldToNewRSet(uint32_t threadId, Region *region)
152 region->IterateAllOldToNewBits([this, threadId, &region, isEdenMark](void *mem) -> bool {
159 RecordWeakReference(threadId, reinterpret_cast<JSTaggedType *>(mem), region);
239 inline void MovableMarker::HandleNewToEdenRSet(uint32_t threadId, Region *region)
241 region->IterateAllNewToEdenBits([this, threadId, &region](void *mem) -> bool {
246 RecordWeakReference(threadId, reinterpret_cast<JSTaggedType *>(mem), region);
258 inline void MovableMarker::HandleOldToNewRSet(uint32_t threadId, Region *region)
260 region->IterateAllOldToNewBits([this, threadId, &region](void *mem) -> bool {
265 RecordWeakReference(threadId, reinterpret_cast<JSTaggedType *>(mem), region);
338 Region *region = Region::ObjectAddressToRange(object);
339 ASSERT(!region->InSharedHeap());
340 auto callbackWithCSet = [this, region](TaggedObject *root, ObjectSlot start, ObjectSlot end, VisitObjectArea area) {
344 SetLocalToShareRSet(slot, region);
350 SetLocalToShareRSet(slot, region);
356 void MovableMarker::SetLocalToShareRSet(ObjectSlot slot, Region *region)
358 ASSERT(!region->InSharedHeap());
365 region->AtomicInsertLocalToShareRSet(slot.SlotAddress());
426 Region *region = Region::ObjectAddressToRange(object);
427 return (region->BelowAgeMark() || (region->HasAgeMark() && ToUintPtr(object) < waterLine_));
445 // It is unnecessary to use region pointer in compressGCMarker.
512 Region *region = Region::ObjectAddressToRange(object);
513 if (region->HasLocalToShareRememberedSet()) {
532 inline bool CompressGCMarker::NeedEvacuate(Region *region)
535 return !region->InHugeObjectSpace() && !region->InReadOnlySpace() && !region->InNonMovableSpace() &&
536 !region->InSharedHeap();
538 return region->InYoungOrOldSpace();