[heap] host object is always non-null in PrepareRecordRelocSlot
Bug: v8:11708 Change-Id: I83c9559bb2aee062a53c1d67c293b8f6654c7d99 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3400965 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Auto-Submit: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#78683}
This commit is contained in:
parent
19c6fd7351
commit
0c4a512d06
@ -2950,13 +2950,14 @@ bool MarkCompactCollector::IsOnEvacuationCandidate(MaybeObject obj) {
|
||||
MarkCompactCollector::RecordRelocSlotInfo
|
||||
MarkCompactCollector::PrepareRecordRelocSlot(Code host, RelocInfo* rinfo,
|
||||
HeapObject target) {
|
||||
DCHECK_EQ(host, rinfo->host());
|
||||
|
||||
RecordRelocSlotInfo result;
|
||||
result.should_record = false;
|
||||
Page* target_page = Page::FromHeapObject(target);
|
||||
Page* source_page = Page::FromHeapObject(host);
|
||||
if (target_page->IsEvacuationCandidate() &&
|
||||
(rinfo->host().is_null() ||
|
||||
!source_page->ShouldSkipEvacuationSlotRecording())) {
|
||||
!source_page->ShouldSkipEvacuationSlotRecording()) {
|
||||
RelocInfo::Mode rmode = rinfo->rmode();
|
||||
Address addr = rinfo->pc();
|
||||
SlotType slot_type = SlotTypeForRelocInfoMode(rmode);
|
||||
|
Loading…
Reference in New Issue
Block a user