Chromium Code Reviews| Index: src/heap/mark-compact.cc |
| diff --git a/src/heap/mark-compact.cc b/src/heap/mark-compact.cc |
| index 4573d17361cc4fba55f85548d7b017d83fe1c481..9d0278bc4edb2107f6131043f59fe2b472e55fe0 100644 |
| --- a/src/heap/mark-compact.cc |
| +++ b/src/heap/mark-compact.cc |
| @@ -2628,11 +2628,14 @@ void MarkCompactCollector::MigrateObject(HeapObject* dst, HeapObject* src, |
| DCHECK(IsAligned(size, kPointerSize)); |
| heap()->MoveBlock(dst->address(), src->address(), size); |
| + if (FLAG_ignition && dst->IsBytecodeArray()) { |
| + PROFILE(isolate(), CodeMoveEvent(AbstractCode::cast(src), dst_addr)); |
| + } |
| RecordMigratedSlotVisitor visitor(this, old_to_old_slots, old_to_new_slots); |
| dst->IterateBody(&visitor); |
| } else if (dest == CODE_SPACE) { |
| DCHECK_CODEOBJECT_SIZE(size, heap()->code_space()); |
| - PROFILE(isolate(), CodeMoveEvent(src_addr, dst_addr)); |
| + PROFILE(isolate(), CodeMoveEvent(AbstractCode::cast(src), dst_addr)); |
| heap()->MoveBlock(dst_addr, src_addr, size); |
| old_to_old_slots->Record(RELOCATED_CODE_OBJECT, dst_addr); |
| Code::cast(dst)->Relocate(dst_addr - src_addr); |
| @@ -3880,8 +3883,8 @@ void MarkCompactCollector::ParallelSweepSpacesComplete() { |
| // code objects. We should either reenable it or change our tools. |
| void MarkCompactCollector::ReportDeleteIfNeeded(HeapObject* obj, |
| Isolate* isolate) { |
| - if (obj->IsCode()) { |
| - PROFILE(isolate, CodeDeleteEvent(obj->address())); |
| + if (obj->IsCode() && obj->IsBytecodeArray()) { |
|
ulan
2016/02/25 11:03:59
This condition seems to be always false.
Did you m
rmcilroy
2016/02/25 11:46:54
Opps, this should indeed be an '||', updated. This
Yang
2016/02/25 11:50:43
+1
ulan
2016/02/25 12:07:50
I would be fine with deleting the dead code.
rmcilroy
2016/02/25 15:06:54
Dead code removed.
|
| + PROFILE(isolate, CodeDeleteEvent(AbstractCode::cast(obj))); |
| } |
| } |