| Index: src/heap/mark-compact-inl.h
|
| diff --git a/src/heap/mark-compact-inl.h b/src/heap/mark-compact-inl.h
|
| index 66b0a59cec6c0b32ba3cf2147e0af2e55bd81f98..c38d20db2a9080142d76b7c00f0804ac0b577a84 100644
|
| --- a/src/heap/mark-compact-inl.h
|
| +++ b/src/heap/mark-compact-inl.h
|
| @@ -29,10 +29,9 @@ void MarkCompactCollector::SetFlags(int flags) {
|
|
|
| void MarkCompactCollector::MarkObject(HeapObject* obj, MarkBit mark_bit) {
|
| DCHECK(Marking::MarkBitFrom(obj) == mark_bit);
|
| - if (!mark_bit.Get()) {
|
| - mark_bit.Set();
|
| + if (Marking::IsWhite(mark_bit)) {
|
| + Marking::WhiteToBlack(mark_bit);
|
| MemoryChunk::IncrementLiveBytesFromGC(obj->address(), obj->Size());
|
| - DCHECK(IsMarked(obj));
|
| DCHECK(obj->GetIsolate()->heap()->Contains(obj));
|
| marking_deque_.PushBlack(obj);
|
| }
|
| @@ -40,9 +39,9 @@ void MarkCompactCollector::MarkObject(HeapObject* obj, MarkBit mark_bit) {
|
|
|
|
|
| void MarkCompactCollector::SetMark(HeapObject* obj, MarkBit mark_bit) {
|
| - DCHECK(!mark_bit.Get());
|
| + DCHECK(Marking::IsWhite(mark_bit));
|
| DCHECK(Marking::MarkBitFrom(obj) == mark_bit);
|
| - mark_bit.Set();
|
| + Marking::WhiteToBlack(mark_bit);
|
| MemoryChunk::IncrementLiveBytesFromGC(obj->address(), obj->Size());
|
| }
|
|
|
| @@ -50,7 +49,7 @@ void MarkCompactCollector::SetMark(HeapObject* obj, MarkBit mark_bit) {
|
| bool MarkCompactCollector::IsMarked(Object* obj) {
|
| DCHECK(obj->IsHeapObject());
|
| HeapObject* heap_object = HeapObject::cast(obj);
|
| - return Marking::MarkBitFrom(heap_object).Get();
|
| + return Marking::IsMarked(Marking::MarkBitFrom(heap_object));
|
| }
|
|
|
|
|
|
|