Chromium Code Reviews| Index: src/heap.cc |
| =================================================================== |
| --- src/heap.cc (revision 6057) |
| +++ src/heap.cc (working copy) |
| @@ -133,7 +133,7 @@ |
| int Heap::mc_count_ = 0; |
| int Heap::ms_count_ = 0; |
| -int Heap::gc_count_ = 0; |
| +unsigned int Heap::gc_count_ = 0; |
| GCTracer* Heap::tracer_ = NULL; |
| @@ -3758,9 +3758,9 @@ |
| static const int kIdlesBeforeMarkSweep = 7; |
| static const int kIdlesBeforeMarkCompact = 8; |
| static const int kMaxIdleCount = kIdlesBeforeMarkCompact + 1; |
| - static const int kGCsBetweenCleanup = 4; |
| + static const unsigned int kGCsBetweenCleanup = 4; |
| static int number_idle_notifications = 0; |
| - static int last_gc_count = gc_count_; |
| + static unsigned int last_gc_count = gc_count_; |
|
Vyacheslav Egorov (Chromium)
2011/02/21 15:35:14
There is a bug here: last_gc_count will be initial
|
| bool uncommit = true; |
| bool finished = false; |
| @@ -3769,7 +3769,7 @@ |
| // GCs have taken place. This allows another round of cleanup based |
| // on idle notifications if enough work has been carried out to |
| // provoke a number of garbage collections. |
| - if (gc_count_ < last_gc_count + kGCsBetweenCleanup) { |
| + if (gc_count_ - last_gc_count < kGCsBetweenCleanup) { |
| number_idle_notifications = |
| Min(number_idle_notifications + 1, kMaxIdleCount); |
| } else { |