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

Unified Diff: src/mark-compact.cc

Issue 10575032: In-place shrinking of descriptor arrays with non-live transitions. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Addressing comments Created 8 years, 6 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/mark-compact.cc
diff --git a/src/mark-compact.cc b/src/mark-compact.cc
index 67f6e8e0a7556c89a1f5162ac441ec3da5b4a1c4..d2dce7475ff61d483310926f595b75ac3fe0755d 100644
--- a/src/mark-compact.cc
+++ b/src/mark-compact.cc
@@ -1890,8 +1890,7 @@ void Marker<T>::MarkDescriptorArray(DescriptorArray* descriptors) {
}
// If the descriptor contains a transition (value is a Map), we don't mark the
- // value as live. It might be set to the NULL_DESCRIPTOR in
- // ClearNonLiveTransitions later.
+ // value as live. It might be removed by ClearNonLiveTransitions later.
for (int i = 0; i < descriptors->number_of_descriptors(); ++i) {
Object** key_slot = descriptors->GetKeySlot(i);
Object* key = *key_slot;
@@ -1929,7 +1928,9 @@ void Marker<T>::MarkDescriptorArray(DescriptorArray* descriptors) {
break;
case MAP_TRANSITION:
case CONSTANT_TRANSITION:
- case NULL_DESCRIPTOR:
+ break;
+ case NONEXISTENT:
+ UNREACHABLE();
break;
}
}

Powered by Google App Engine
This is Rietveld 408576698