Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(373)

Unified Diff: src/heap/scavenger.cc

Issue 2644523002: [heap] Provide ObjectMarking with marking transitions (Closed)
Patch Set: Fix markbit clearing for LO Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/heap/scavenger.cc
diff --git a/src/heap/scavenger.cc b/src/heap/scavenger.cc
index f2722e81de5e27a1d415991b955ce3f91cc1e38f..0088facf03eaaa3088ed3162818317454bfc0820 100644
--- a/src/heap/scavenger.cc
+++ b/src/heap/scavenger.cc
@@ -193,9 +193,8 @@ class ScavengingVisitor : public StaticVisitorBase {
reinterpret_cast<base::AtomicWord>(target));
if (object_contents == POINTER_OBJECT) {
- heap->promotion_queue()->insert(
- target, object_size,
- Marking::IsBlack(ObjectMarking::MarkBitFrom(object)));
+ heap->promotion_queue()->insert(target, object_size,
+ ObjectMarking::IsBlack(object));
}
heap->IncrementPromotedObjectsSize(object_size);
return true;
@@ -239,8 +238,7 @@ class ScavengingVisitor : public StaticVisitorBase {
DCHECK(map_word.IsForwardingAddress());
HeapObject* target = map_word.ToForwardingAddress();
- MarkBit mark_bit = ObjectMarking::MarkBitFrom(target);
- if (Marking::IsBlack(mark_bit)) {
+ if (ObjectMarking::IsBlack(target)) {
// This object is black and it might not be rescanned by marker.
// We should explicitly record code entry slot for compaction because
// promotion queue processing (IteratePromotedObjectPointers) will

Powered by Google App Engine
This is Rietveld 408576698