| Index: src/mark-compact.cc
|
| diff --git a/src/mark-compact.cc b/src/mark-compact.cc
|
| index 4b0f7e232c5fd91a0f439cfff9fd63661ceafa11..4fc9fdba5e974a8c43fa9c4f1872cbc93f01ca1d 100644
|
| --- a/src/mark-compact.cc
|
| +++ b/src/mark-compact.cc
|
| @@ -841,6 +841,12 @@ class StaticMarkingVisitor : public StaticVisitorBase {
|
| heap->mark_compact_collector()->MarkObject(cell, mark);
|
| }
|
|
|
| + static inline void VisitEmbeddedPointer(Heap* heap, Code* host, Object** p) {
|
| + MarkObjectByPointer(heap->mark_compact_collector(),
|
| + reinterpret_cast<Object**>(host),
|
| + p);
|
| + }
|
| +
|
| static inline void VisitCodeTarget(Heap* heap, RelocInfo* rinfo) {
|
| ASSERT(RelocInfo::IsCodeTarget(rinfo->rmode()));
|
| Code* target = Code::GetCodeFromTargetAddress(rinfo->target_address());
|
| @@ -2441,6 +2447,10 @@ class PointersUpdatingVisitor: public ObjectVisitor {
|
| for (Object** p = start; p < end; p++) UpdatePointer(p);
|
| }
|
|
|
| + void VisitEmbeddedPointer(Code* host, Object** p) {
|
| + UpdatePointer(p);
|
| + }
|
| +
|
| void VisitCodeTarget(RelocInfo* rinfo) {
|
| ASSERT(RelocInfo::IsCodeTarget(rinfo->rmode()));
|
| Object* target = Code::GetCodeFromTargetAddress(rinfo->target_address());
|
|
|