• Home
  • Raw
  • Download

Lines Matching full:slot

22 …ogErrorForObjSlot(const BaseHeap *heap, const char *headerInfo, TaggedObject *obj, ObjectSlot slot,  in LogErrorForObjSlot()  argument
25 TaggedObject *slotValue = slot.GetTaggedObject(); in LogErrorForObjSlot()
35 << ", slot address=" << reinterpret_cast<void*>(slot.SlotAddress()) in LogErrorForObjSlot()
36 << ", slot value=" << slotValue in LogErrorForObjSlot()
37 << ", slot value region=" << slotRegion in LogErrorForObjSlot()
38 << ", slot value space type=" << slotRegion->GetSpaceTypeName() in LogErrorForObjSlot()
39 … << ", slot value type=" << JSHClass::DumpJSType(slotValue->GetClass()->GetObjectType()) in LogErrorForObjSlot()
45 << ", obj slot oldToNew bit=" << region->TestOldToNew(slot.SlotAddress()) in LogErrorForObjSlot()
46 << ", obj slot newToEden bit=" << region->TestNewToEden(slot.SlotAddress()) in LogErrorForObjSlot()
47 << ", obj slot value mark bit=" << slotRegion->Test(slotValue) in LogErrorForObjSlot()
78 ObjectSlot slot(ToUintPtr(object)); in VerifyInactiveSemiSpaceMarkedObject() local
83 "but InactiveSemiSpace(FromSpace) Object.", object, slot, value); in VerifyInactiveSemiSpaceMarkedObject()
100 for (ObjectSlot slot = start; slot < end; slot++) { in VisitAllObjects() local
104 VerifyObjectSlotLegal(slot, root); in VisitAllObjects()
109 for (ObjectSlot slot = start; slot < end; slot++) { in VisitAllObjects() local
110 VerifyObjectSlotLegal(slot, root); in VisitAllObjects()
115 void VerifyObjectVisitor::VerifyObjectSlotLegal(ObjectSlot slot, TaggedObject *object) const in VerifyObjectSlotLegal() argument
117 JSTaggedValue value(slot.GetTaggedType()); in VerifyObjectSlotLegal()
121 object, slot, value.GetTaggedWeakRef()); in VerifyObjectSlotLegal()
125 object, slot, value.GetTaggedWeakRef()); in VerifyObjectSlotLegal()
129 VerifyHeapObjectSlotLegal(slot, value, object); in VerifyObjectSlotLegal()
133 void VerifyObjectVisitor::VerifyHeapObjectSlotLegal(ObjectSlot slot, in VerifyHeapObjectSlotLegal() argument
140 object, slot, slotValue.GetTaggedObject()); in VerifyHeapObjectSlotLegal()
144 object, slot, slotValue.GetTaggedObject()); in VerifyHeapObjectSlotLegal()
152 VerifyMarkEden(object, slot, slotValue.GetTaggedObject()); in VerifyHeapObjectSlotLegal()
155 VerifyEvacuateEden(object, slot, slotValue.GetTaggedObject()); in VerifyHeapObjectSlotLegal()
158 VerifyMarkYoung(object, slot, slotValue.GetTaggedObject()); in VerifyHeapObjectSlotLegal()
161 VerifyEvacuateYoung(object, slot, slotValue.GetTaggedObject()); in VerifyHeapObjectSlotLegal()
164 VerifyMarkFull(object, slot, slotValue.GetTaggedObject()); in VerifyHeapObjectSlotLegal()
167 VerifyEvacuateOld(object, slot, slotValue.GetTaggedObject()); in VerifyHeapObjectSlotLegal()
170 VerifyEvacuateFull(object, slot, slotValue.GetTaggedObject()); in VerifyHeapObjectSlotLegal()
173 VerifySharedRSetPostFullGC(object, slot, slotValue.GetTaggedObject()); in VerifyHeapObjectSlotLegal()
177 VerifySharedObjectReference(object, slot, slotValue.GetTaggedObject()); in VerifyHeapObjectSlotLegal()
185 void VerifyObjectVisitor::VerifyMarkEden(TaggedObject *object, ObjectSlot slot, TaggedObject *value… in VerifyMarkEden() argument
192 if (!objectRegion->TestOldToNew(slot.SlotAddress())) { in VerifyMarkEden()
193 …LogErrorForObjSlot(heap_, "Verify MarkEden: Old object, slot miss old_to_new bit.", object, slot, … in VerifyMarkEden()
195 …LogErrorForObjSlot(heap_, "Verify MarkEden: Old object, slot has old_to_new bit, miss gc_mark bit.… in VerifyMarkEden()
196 object, slot, value); in VerifyMarkEden()
201 if (!objectRegion->TestNewToEden(slot.SlotAddress())) { in VerifyMarkEden()
204 …gErrorForObjSlot(heap_, "Verify MarkEden: Young object, slot miss new_to_eden bit.", object, slot,… in VerifyMarkEden()
206 …LogErrorForObjSlot(heap_, "Verify MarkEden: Young object, slot has new_to_eden bit, miss gc_mark b… in VerifyMarkEden()
207 object, slot, value); in VerifyMarkEden()
216 … LogErrorForObjSlot(heap_, "Verify MarkEden: Marked object, slot in EdenSpace, miss gc_mark bit.", in VerifyMarkEden()
217 object, slot, value); in VerifyMarkEden()
221 … LogErrorForObjSlot(heap_, "Verify MarkEden: Marked object, slot marked, but NOT in Eden Space.", in VerifyMarkEden()
222 object, slot, value); in VerifyMarkEden()
228 void VerifyObjectVisitor::VerifyMarkYoung(TaggedObject *object, ObjectSlot slot, TaggedObject *valu… in VerifyMarkYoung() argument
234 if (!objectRegion->TestOldToNew(slot.SlotAddress())) { in VerifyMarkYoung()
235 …ogErrorForObjSlot(heap_, "Verify MarkYoung: Old object, slot miss old_to_new bit.", object, slot, … in VerifyMarkYoung()
237 …LogErrorForObjSlot(heap_, "Verify MarkYoung: Old object, slot has old_to_new bit, miss gc_mark bit… in VerifyMarkYoung()
238 object, slot, value); in VerifyMarkYoung()
242 if (!objectRegion->TestLocalToShare(slot.SlotAddress())) { in VerifyMarkYoung()
243 … LogErrorForObjSlot(heap_, "Verify MarkYoung: Local object, slot local_to_share bit = 0, " in VerifyMarkYoung()
244 "but SharedHeap object.", object, slot, value); in VerifyMarkYoung()
253 …LogErrorForObjSlot(heap_, "Verify MarkYoung: Marked object, slot in YoungSpace, miss gc_mark bit.", in VerifyMarkYoung()
254 object, slot, value); in VerifyMarkYoung()
259 LogErrorForObjSlot(heap_, "Verify MarkYoung: Marked object, slot marked, but NOT in " in VerifyMarkYoung()
260 "Young/AppSpawn/ReadOnly Space.", object, slot, value); in VerifyMarkYoung()
265 void VerifyObjectVisitor::VerifyEvacuateEden(TaggedObject *object, ObjectSlot slot, TaggedObject *v… in VerifyEvacuateEden() argument
270 if (objectRegion->TestOldToNew(slot.SlotAddress())) { in VerifyEvacuateEden()
273 … LogErrorForObjSlot(heap_, "Verify EvacuateEden: Old object, slot old_to_new bit = 1, " in VerifyEvacuateEden()
274 "but in EdenSpace object.", object, slot, value); in VerifyEvacuateEden()
276 … LogErrorForObjSlot(heap_, "Verify EvacuateEden: Old object, slot old_to_new bit = 1, " in VerifyEvacuateEden()
277 "but NOT ActiveSpace(ToSpace) object.", object, slot, value); in VerifyEvacuateEden()
281 … LogErrorForObjSlot(heap_, "Verify EvacuateEden: Old object, slot old_to_new bit = 0, " in VerifyEvacuateEden()
282 "but YoungSpace object.", object, slot, value); in VerifyEvacuateEden()
287 if (objectRegion->TestNewToEden(slot.SlotAddress())) { in VerifyEvacuateEden()
289 … LogErrorForObjSlot(heap_, "Verify EvacuateEden: Young object, slot young_to_eden bit = 1, " in VerifyEvacuateEden()
290 "but NOT Eden object.", object, slot, value); in VerifyEvacuateEden()
292 … LogErrorForObjSlot(heap_, "Verify EvacuateEden: Young object, slot young_to_eden bit = 1, " in VerifyEvacuateEden()
293 "but Eden object.", object, slot, value); in VerifyEvacuateEden()
297 … LogErrorForObjSlot(heap_, "Verify EvacuateEden: Young object, slot young_to_eden bit = 0, " in VerifyEvacuateEden()
298 "but Eden object.", object, slot, value); in VerifyEvacuateEden()
304 void VerifyObjectVisitor::VerifyEvacuateYoung(TaggedObject *object, ObjectSlot slot, TaggedObject *… in VerifyEvacuateYoung() argument
310 if (objectRegion->TestOldToNew(slot.SlotAddress())) { in VerifyEvacuateYoung()
313 … LogErrorForObjSlot(heap_, "Verify EvacuateYoung: Old object, slot old_to_new bit = 1, " in VerifyEvacuateYoung()
314 "but in EdenSpace object.", object, slot, value); in VerifyEvacuateYoung()
316 … LogErrorForObjSlot(heap_, "Verify EvacuateYoung: Old object, slot old_to_new bit = 1, " in VerifyEvacuateYoung()
317 "but NOT ActiveSpace(ToSpace) object.", object, slot, value); in VerifyEvacuateYoung()
321 … LogErrorForObjSlot(heap_, "Verify EvacuateYoung: Old object, slot old_to_new bit = 0, " in VerifyEvacuateYoung()
322 "but YoungSpace object.", object, slot, value); in VerifyEvacuateYoung()
327 if (!objectRegion->TestLocalToShare(slot.SlotAddress())) { in VerifyEvacuateYoung()
328 … LogErrorForObjSlot(heap_, "Verify EvacuateYoung: Local object, slot local_to_share bit = 0, " in VerifyEvacuateYoung()
329 "but SharedHeap object.", object, slot, value); in VerifyEvacuateYoung()
334 …LogErrorForObjSlot(heap_, "Verify EvacuateYoung: ActiveSpace object, slot in InactiveSpace(FromSpa… in VerifyEvacuateYoung()
335 object, slot, value); in VerifyEvacuateYoung()
337 … LogErrorForObjSlot(heap_, "Verify EvacuateYoung: ActiveSpace object, slot in EdenSpace.", in VerifyEvacuateYoung()
338 object, slot, value); in VerifyEvacuateYoung()
343 void VerifyObjectVisitor::VerifyMarkFull(TaggedObject *object, ObjectSlot slot, TaggedObject *value… in VerifyMarkFull() argument
348 if (!objectRegion->TestOldToNew(slot.SlotAddress())) { in VerifyMarkFull()
349 …LogErrorForObjSlot(heap_, "Verify MarkFull: Old object, slot miss old_to_new bit.", object, slot, … in VerifyMarkFull()
354 …ogErrorForObjSlot(heap_, "Verify MarkFull: Marked object, slot miss gc_mark bit.", object, slot, v… in VerifyMarkFull()
358 if (!objectRegion->TestLocalToShare(slot.SlotAddress())) { in VerifyMarkFull()
359 … LogErrorForObjSlot(heap_, "Verify VerifyMarkFull: Local object, slot local_to_share bit = 0, " in VerifyMarkFull()
360 "but SharedHeap object.", object, slot, value); in VerifyMarkFull()
366 [[maybe_unused]]ObjectSlot slot, in VerifyEvacuateOld() argument
369 VerifyEvacuateYoung(root, slot, value); in VerifyEvacuateOld()
373 [[maybe_unused]]ObjectSlot slot, in VerifyEvacuateFull() argument
376 VerifyEvacuateYoung(root, slot, value); in VerifyEvacuateFull()
379 void VerifyObjectVisitor::VerifySharedObjectReference(TaggedObject *object, ObjectSlot slot, Tagged… in VerifySharedObjectReference() argument
386 object, slot, value); in VerifySharedObjectReference()
389 if (!objectRegion->TestLocalToShare(slot.SlotAddress())) { in VerifySharedObjectReference()
390 …LogErrorForObjSlot(heap_, "Verify SharedObjectReference: Local object, slot local_to_share bit = 0… in VerifySharedObjectReference()
391 "but SharedHeap object.", object, slot, value); in VerifySharedObjectReference()
396 void VerifyObjectVisitor::VerifySharedRSetPostFullGC(TaggedObject *object, ObjectSlot slot, TaggedO… in VerifySharedRSetPostFullGC() argument
401 if (!objectRegion->TestLocalToShare(slot.SlotAddress())) { in VerifySharedRSetPostFullGC()
402 …LogErrorForObjSlot(heap_, "Verify SharedRSetPostFullGC: Local object, slot local_to_share bit = 0,… in VerifySharedRSetPostFullGC()
403 "but SharedHeap object.", object, slot, value); in VerifySharedRSetPostFullGC()
410 ObjectSlot slot(reinterpret_cast<uintptr_t>(obj)); in operator ()() local
412 LOG_GC(DEBUG) << "Heap object(" << slot.SlotAddress() << ") old to new rset fail: value is " in operator ()()
413 << slot.GetTaggedType(); in operator ()()
420 LOG_GC(ERROR) << "Heap object(" << slot.GetTaggedType() << ") old to new rset fail: value(" in operator ()()
421 << slot.GetTaggedObject() << "/" in operator ()()
422 << JSHClass::DumpJSType(slot.GetTaggedObject()->GetClass()->GetObjectType()) in operator ()()
443 RootVisitor visitor = [this, &failCount]([[maybe_unused]] Root type, ObjectSlot slot) { in VerifyRoot() argument
444 JSTaggedValue value(slot.GetTaggedType()); in VerifyRoot()
449 VerifyObjectSlot(slot, &failCount); in VerifyRoot()
452 for (ObjectSlot slot = start; slot < end; slot++) { in VerifyRoot() local
453 JSTaggedValue value(slot.GetTaggedType()); in VerifyRoot()
458 VerifyObjectSlot(slot, &failCount); in VerifyRoot()
491 void Verification::VerifyObjectSlot(const ObjectSlot &slot, size_t *failCount) const in VerifyObjectSlot() argument
493 JSTaggedValue value(slot.GetTaggedType()); in VerifyObjectSlot()
562 auto f = [cm] (ObjectSlot slot, TaggedObject *obj) { in VerifyMark() argument
564 JSTaggedValue value(slot.GetTaggedType()); in VerifyMark()
572 if (!objectRegion->TestLocalToShare(slot.SlotAddress())) { in VerifyMark()
573 LOG_GC(FATAL) << "verify shared1 " << cm << ':' << slot.SlotAddress() in VerifyMark()
578 LOG_GC(FATAL) << "verify shared2 " << cm << ':' << slot.SlotAddress() in VerifyMark()
583 LOG_GC(FATAL) << "verify shared3 " << cm << ':' << slot.SlotAddress() in VerifyMark()
595 for (ObjectSlot slot = start; slot < end; slot++) { in VerifyMark() local
599 f(slot, root); in VerifyMark()
604 for (ObjectSlot slot = start; slot < end; slot++) { in VerifyMark() local
605 f(slot, root); in VerifyMark()
612 auto f = [cm] (ObjectSlot slot, TaggedObject *obj) { in VerifyMark() argument
617 JSTaggedValue value(slot.GetTaggedType()); in VerifyMark()
623 LOG_GC(FATAL) << "verify shared4 " << cm << ':' << slot.SlotAddress() in VerifyMark()
628 LOG_GC(FATAL) << "verify shared5 " << cm << ':' << slot.SlotAddress() in VerifyMark()
633 LOG_GC(FATAL) << "verify shared6 " << cm << ':' << slot.SlotAddress() in VerifyMark()
645 for (ObjectSlot slot = start; slot < end; slot++) { in VerifyMark() local
649 f(slot, root); in VerifyMark()
654 for (ObjectSlot slot = start; slot < end; slot++) { in VerifyMark() local
655 f(slot, root); in VerifyMark()
673 auto f = [cm] (ObjectSlot slot, TaggedObject *obj) { in VerifySweep() argument
675 JSTaggedValue value(slot.GetTaggedType()); in VerifySweep()
683 if (!objectRegion->TestLocalToShare(slot.SlotAddress())) { in VerifySweep()
684 LOG_GC(FATAL) << "verify shared7 " << cm << ':' << slot.SlotAddress() in VerifySweep()
689 LOG_GC(FATAL) << "verify shared8 " << cm << ':' << slot.SlotAddress() in VerifySweep()
694 LOG_GC(FATAL) << "verify shared9 " << cm << ':' << slot.SlotAddress() in VerifySweep()
706 for (ObjectSlot slot = start; slot < end; slot++) { in VerifySweep() local
710 f(slot, root); in VerifySweep()
715 for (ObjectSlot slot = start; slot < end; slot++) { in VerifySweep() local
716 f(slot, root); in VerifySweep()
723 auto f = [cm] (ObjectSlot slot, TaggedObject *obj) { in VerifySweep() argument
729 JSTaggedValue value(slot.GetTaggedType()); in VerifySweep()
735 LOG_GC(FATAL) << "verify shared11 " << cm << ':' << slot.SlotAddress() in VerifySweep()
740 LOG_GC(FATAL) << "verify shared12 " << cm << ':' << slot.SlotAddress() in VerifySweep()
745 LOG_GC(FATAL) << "verify shared13 " << cm << ':' << slot.SlotAddress() in VerifySweep()
757 for (ObjectSlot slot = start; slot < end; slot++) { in VerifySweep() local
761 f(slot, root); in VerifySweep()
766 for (ObjectSlot slot = start; slot < end; slot++) { in VerifySweep() local
767 f(slot, root); in VerifySweep()
776 RootVisitor visitor = [this, &failCount]([[maybe_unused]] Root type, ObjectSlot slot) { in VerifyRoot() argument
777 VerifyObjectSlot(slot, &failCount); in VerifyRoot()
780 for (ObjectSlot slot = start; slot < end; slot++) { in VerifyRoot() local
781 VerifyObjectSlot(slot, &failCount); in VerifyRoot()
788 RootVisitor serializeVisitor = [this, &failCount]([[maybe_unused]] Root type, ObjectSlot slot) { in VerifyRoot() argument
789 JSTaggedValue value(slot.GetTaggedType()); in VerifyRoot()
841 void SharedHeapVerification::VerifyObjectSlot(const ObjectSlot &slot, size_t *failCount) const in VerifyObjectSlot() argument
843 JSTaggedValue value(slot.GetTaggedType()); in VerifyObjectSlot()