Author: [email protected]
Date: Wed Jul  1 06:20:09 2009
New Revision: 2321

Modified:
    branches/bleeding_edge/src/heap.cc

Log:
Always scavenge when doing GCs.
Review URL: http://codereview.chromium.org/151149

Modified: branches/bleeding_edge/src/heap.cc
==============================================================================
--- branches/bleeding_edge/src/heap.cc  (original)
+++ branches/bleeding_edge/src/heap.cc  Wed Jul  1 06:20:09 2009
@@ -221,6 +221,7 @@
    // NewSpace statistics are logged exactly once when --log-gc is turned  
on.
  #if defined(DEBUG) && defined(ENABLE_LOGGING_AND_PROFILING)
    if (FLAG_heap_stats) {
+    new_space_.CollectStatistics();
      ReportHeapStatistics("After GC");
    } else if (FLAG_log_gc) {
      new_space_.ReportStatistics();
@@ -428,22 +429,8 @@
      old_gen_allocation_limit_ =
          old_gen_size + Max(kMinimumAllocationLimit, old_gen_size / 2);
      old_gen_exhausted_ = false;
-
-    // If we have used the mark-compact collector to collect the new
-    // space, and it has not compacted the new space, we force a
-    // separate scavenge collection.  This is a hack.  It covers the
-    // case where (1) a new space collection was requested, (2) the
-    // collector selection policy selected the mark-compact collector,
-    // and (3) the mark-compact collector policy selected not to
-    // compact the new space.  In that case, there is no more (usable)
-    // free space in the new space after the collection compared to
-    // before.
-    if (space == NEW_SPACE && !MarkCompactCollector::HasCompacted()) {
-      Scavenge();
-    }
-  } else {
-    Scavenge();
    }
+  Scavenge();
    Counters::objs_since_last_young.Set(0);

    PostGarbageCollectionProcessing();

--~--~---------~--~----~------------~-------~--~----~
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
-~----------~----~----~----~------~----~------~--~---

Reply via email to