Index: src/heap.cc |
=================================================================== |
--- src/heap.cc (revision 3683) |
+++ src/heap.cc (working copy) |
@@ -327,7 +327,7 @@ |
int Heap::SizeOfObjects() { |
int total = 0; |
AllSpaces spaces; |
- while (Space* space = spaces.next()) { |
+ for (Space* space = spaces.next(); space != NULL; space = spaces.next()) { |
total += space->Size(); |
} |
return total; |
@@ -732,13 +732,14 @@ |
// do not expect them. |
VerifyNonPointerSpacePointersVisitor v; |
HeapObjectIterator code_it(Heap::code_space()); |
- while (code_it.has_next()) { |
- HeapObject* object = code_it.next(); |
+ for (HeapObject* object = code_it.next(); |
+ object != NULL; object = code_it.next()) |
object->Iterate(&v); |
- } |
HeapObjectIterator data_it(Heap::old_data_space()); |
- while (data_it.has_next()) data_it.next()->Iterate(&v); |
+ for (HeapObject* object = data_it.next(); |
+ object != NULL; object = data_it.next()) |
+ object->Iterate(&v); |
} |
#endif |
@@ -804,8 +805,8 @@ |
// Copy objects reachable from cells by scavenging cell values directly. |
HeapObjectIterator cell_iterator(cell_space_); |
- while (cell_iterator.has_next()) { |
- HeapObject* cell = cell_iterator.next(); |
+ for (HeapObject* cell = cell_iterator.next(); |
+ cell != NULL; cell = cell_iterator.next()) { |
if (cell->IsJSGlobalPropertyCell()) { |
Address value_address = |
reinterpret_cast<Address>(cell) + |
@@ -1013,13 +1014,15 @@ |
void Heap::RebuildRSets(PagedSpace* space) { |
HeapObjectIterator it(space); |
- while (it.has_next()) Heap::UpdateRSet(it.next()); |
+ for (HeapObject* obj = it.next(); obj != NULL; obj = it.next()) |
+ Heap::UpdateRSet(obj); |
} |
void Heap::RebuildRSets(LargeObjectSpace* space) { |
LargeObjectIterator it(space); |
- while (it.has_next()) Heap::UpdateRSet(it.next()); |
+ for (HeapObject* obj = it.next(); obj != NULL; obj = it.next()) |
+ Heap::UpdateRSet(obj); |
} |
@@ -3106,7 +3109,8 @@ |
if (!HasBeenSetup()) return; |
Top::PrintStack(); |
AllSpaces spaces; |
- while (Space* space = spaces.next()) space->Print(); |
+ for (Space* space = spaces.next(); space != NULL; space = spaces.next()) |
+ space->Print(); |
} |
@@ -3648,7 +3652,8 @@ |
void Heap::Shrink() { |
// Try to shrink all paged spaces. |
PagedSpaces spaces; |
- while (PagedSpace* space = spaces.next()) space->Shrink(); |
+ for (PagedSpace* space = spaces.next(); space != NULL; space = spaces.next()) |
+ space->Shrink(); |
} |
@@ -3657,7 +3662,8 @@ |
void Heap::Protect() { |
if (HasBeenSetup()) { |
AllSpaces spaces; |
- while (Space* space = spaces.next()) space->Protect(); |
+ for (Space* space = spaces.next(); space != NULL; space = spaces.next()) |
+ space->Protect(); |
} |
} |
@@ -3665,7 +3671,8 @@ |
void Heap::Unprotect() { |
if (HasBeenSetup()) { |
AllSpaces spaces; |
- while (Space* space = spaces.next()) space->Unprotect(); |
+ for (Space* space = spaces.next(); space != NULL; space = spaces.next()) |
+ space->Unprotect(); |
} |
} |
@@ -3837,37 +3844,28 @@ |
} |
-bool HeapIterator::has_next() { |
+HeapObject* HeapIterator::next() { |
// No iterator means we are done. |
- if (object_iterator_ == NULL) return false; |
+ if (object_iterator_ == NULL) return NULL; |
- if (object_iterator_->has_next_object()) { |
+ if (HeapObject* obj = object_iterator_->next_object()) { |
// If the current iterator has more objects we are fine. |
- return true; |
+ return obj; |
} else { |
// Go though the spaces looking for one that has objects. |
while (space_iterator_->has_next()) { |
object_iterator_ = space_iterator_->next(); |
- if (object_iterator_->has_next_object()) { |
- return true; |
+ if (HeapObject* obj = object_iterator_->next_object()) { |
+ return obj; |
} |
} |
} |
// Done with the last space. |
object_iterator_ = NULL; |
- return false; |
+ return NULL; |
} |
-HeapObject* HeapIterator::next() { |
- if (has_next()) { |
- return object_iterator_->next_object(); |
- } else { |
- return NULL; |
- } |
-} |
- |
- |
void HeapIterator::reset() { |
// Restart the iterator. |
Shutdown(); |