| Index: runtime/vm/code_generator.cc
|
| diff --git a/runtime/vm/code_generator.cc b/runtime/vm/code_generator.cc
|
| index 283392ed9cd242d793fb37ceff08ea510d6fa298..87b2a89ce36376f5c4f5177f71085f7ce9f022c5 100644
|
| --- a/runtime/vm/code_generator.cc
|
| +++ b/runtime/vm/code_generator.cc
|
| @@ -1945,4 +1945,20 @@ DEFINE_LEAF_RUNTIME_ENTRY(intptr_t,
|
| }
|
| END_LEAF_RUNTIME_ENTRY
|
|
|
| +
|
| +DEFINE_LEAF_RUNTIME_ENTRY(void,
|
| + HeapTraceStore,
|
| + RawObject* object,
|
| + uword field_addr,
|
| + RawObject* value) {
|
| + if (!(object->IsHeapObject() && value->IsHeapObject())) {
|
| + return;
|
| + }
|
| + HeapTrace* heap_trace = Isolate::Current()->heap()->trace();
|
| + heap_trace->TraceStoreIntoObject(RawObject::ToAddr(object),
|
| + field_addr,
|
| + RawObject::ToAddr(value));
|
| +}
|
| +END_LEAF_RUNTIME_ENTRY
|
| +
|
| } // namespace dart
|
|
|