Index: src/heap/incremental-marking.cc |
diff --git a/src/heap/incremental-marking.cc b/src/heap/incremental-marking.cc |
index f52b369d62f2391ad51b39c7c97f79a742149afd..47e1e12c77b6fbcd47f362a337edd583ecccaca4 100644 |
--- a/src/heap/incremental-marking.cc |
+++ b/src/heap/incremental-marking.cc |
@@ -91,6 +91,16 @@ void IncrementalMarking::RecordWriteFromCode(HeapObject* obj, Object** slot, |
marking->RecordWrite(obj, slot, *slot); |
} |
+// static |
+void IncrementalMarking::RecordWriteOfCodeEntryFromCode(JSFunction* host, |
+ Object** slot, |
+ Isolate* isolate) { |
+ DCHECK(host->IsJSFunction()); |
+ IncrementalMarking* marking = isolate->heap()->incremental_marking(); |
+ Code* value = Code::cast( |
+ Code::GetObjectFromEntryAddress(reinterpret_cast<Address>(slot))); |
+ marking->RecordWriteOfCodeEntry(host, slot, value); |
+} |
void IncrementalMarking::RecordCodeTargetPatch(Code* host, Address pc, |
HeapObject* value) { |