diff options
Diffstat (limited to 'src/mark-compact.cc')
-rw-r--r-- | src/mark-compact.cc | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/mark-compact.cc b/src/mark-compact.cc index 95afb4ab..d9b0222a 100644 --- a/src/mark-compact.cc +++ b/src/mark-compact.cc @@ -28,6 +28,7 @@ #include "v8.h" #include "execution.h" +#include "heap-profiler.h" #include "global-handles.h" #include "ic-inl.h" #include "mark-compact.h" @@ -425,8 +426,10 @@ void MarkCompactCollector::MarkMapContents(Map* map) { // Since the descriptor array has been marked already, it is fine // that one of these fields contains a pointer to it. MarkingVisitor visitor; // Has no state or contents. - visitor.VisitPointers(HeapObject::RawField(map, Map::kPrototypeOffset), - HeapObject::RawField(map, Map::kSize)); + visitor.VisitPointers(HeapObject::RawField(map, + Map::kPointerFieldsBeginOffset), + HeapObject::RawField(map, + Map::kPointerFieldsEndOffset)); } @@ -2216,6 +2219,7 @@ int MarkCompactCollector::RelocateOldNonCodeObject(HeapObject* obj, if (copied_to->IsJSFunction()) { PROFILE(FunctionMoveEvent(old_addr, new_addr)); } + HEAP_PROFILE(ObjectMoveEvent(old_addr, new_addr)); return obj_size; } @@ -2262,6 +2266,7 @@ int MarkCompactCollector::RelocateCodeObject(HeapObject* obj) { // Notify the logger that compiled code has moved. PROFILE(CodeMoveEvent(old_addr, new_addr)); } + HEAP_PROFILE(ObjectMoveEvent(old_addr, new_addr)); return obj_size; } @@ -2306,6 +2311,7 @@ int MarkCompactCollector::RelocateNewObject(HeapObject* obj) { if (copied_to->IsJSFunction()) { PROFILE(FunctionMoveEvent(old_addr, new_addr)); } + HEAP_PROFILE(ObjectMoveEvent(old_addr, new_addr)); return obj_size; } |