Index: src/mark-compact.cc |
diff --git a/src/mark-compact.cc b/src/mark-compact.cc |
index 901674d700ae665ba86cf8bdc25a98268c30170c..263de4878fcbc83661a57d70183df2166b04860a 100644 |
--- a/src/mark-compact.cc |
+++ b/src/mark-compact.cc |
@@ -3049,13 +3049,14 @@ class EvacuationWeakObjectRetainer : public WeakObjectRetainer { |
}; |
-static inline void UpdateSlot(ObjectVisitor* v, |
+static inline void UpdateSlot(Isolate* isolate, |
+ ObjectVisitor* v, |
SlotsBuffer::SlotType slot_type, |
Address addr) { |
switch (slot_type) { |
case SlotsBuffer::CODE_TARGET_SLOT: { |
RelocInfo rinfo(addr, RelocInfo::CODE_TARGET, 0, NULL); |
- rinfo.Visit(v); |
+ rinfo.Visit(isolate, v); |
break; |
} |
case SlotsBuffer::CODE_ENTRY_SLOT: { |
@@ -3069,17 +3070,17 @@ static inline void UpdateSlot(ObjectVisitor* v, |
} |
case SlotsBuffer::DEBUG_TARGET_SLOT: { |
RelocInfo rinfo(addr, RelocInfo::DEBUG_BREAK_SLOT, 0, NULL); |
- if (rinfo.IsPatchedDebugBreakSlotSequence()) rinfo.Visit(v); |
+ if (rinfo.IsPatchedDebugBreakSlotSequence()) rinfo.Visit(isolate, v); |
break; |
} |
case SlotsBuffer::JS_RETURN_SLOT: { |
RelocInfo rinfo(addr, RelocInfo::JS_RETURN, 0, NULL); |
- if (rinfo.IsPatchedReturnSequence()) rinfo.Visit(v); |
+ if (rinfo.IsPatchedReturnSequence()) rinfo.Visit(isolate, v); |
break; |
} |
case SlotsBuffer::EMBEDDED_OBJECT_SLOT: { |
RelocInfo rinfo(addr, RelocInfo::EMBEDDED_OBJECT, 0, NULL); |
- rinfo.Visit(v); |
+ rinfo.Visit(isolate, v); |
break; |
} |
default: |
@@ -4266,7 +4267,8 @@ void SlotsBuffer::UpdateSlots(Heap* heap) { |
} else { |
++slot_idx; |
ASSERT(slot_idx < idx_); |
- UpdateSlot(&v, |
+ UpdateSlot(heap->isolate(), |
+ &v, |
DecodeSlotType(slot), |
reinterpret_cast<Address>(slots_[slot_idx])); |
} |
@@ -4288,7 +4290,8 @@ void SlotsBuffer::UpdateSlotsWithFilter(Heap* heap) { |
ASSERT(slot_idx < idx_); |
Address pc = reinterpret_cast<Address>(slots_[slot_idx]); |
if (!IsOnInvalidatedCodeObject(pc)) { |
- UpdateSlot(&v, |
+ UpdateSlot(heap->isolate(), |
+ &v, |
DecodeSlotType(slot), |
reinterpret_cast<Address>(slots_[slot_idx])); |
} |