maximum_committed_(0),
survived_since_last_expansion_(0),
survived_last_scavenge_(0),
- sweep_generation_(0),
always_allocate_scope_depth_(0),
contexts_disposed_(0),
global_ic_age_(0),
UpdateOldGenerationAllocationCounter();
// Perform mark-sweep with optional compaction.
MarkCompact();
- sweep_generation_++;
old_gen_exhausted_ = false;
old_generation_size_configured_ = true;
// This should be updated before PostGarbageCollectionProcessing, which can
Object* encountered_weak_cells() const { return encountered_weak_cells_; }
// Number of mark-sweeps.
- unsigned int ms_count() { return ms_count_; }
+ int ms_count() const { return ms_count_; }
// Iterates over all roots in the heap.
void IterateRoots(ObjectVisitor* v, VisitMode mode);
return &external_string_table_;
}
- // Returns the current sweep generation.
- int sweep_generation() { return sweep_generation_; }
-
bool concurrent_sweeping_enabled() { return concurrent_sweeping_enabled_; }
inline Isolate* isolate();
// ... and since the last scavenge.
int survived_last_scavenge_;
- // For keeping track on when to flush RegExp code.
- int sweep_generation_;
-
int always_allocate_scope_depth_;
// For keeping track of context disposals.
// Set a number in the 0-255 range to guarantee no smi overflow.
re->SetDataAt(JSRegExp::code_index(is_one_byte),
- Smi::FromInt(heap->sweep_generation() & 0xff));
+ Smi::FromInt(heap->ms_count() & 0xff));
} else if (code->IsSmi()) {
int value = Smi::cast(code)->value();
// The regexp has not been compiled yet or there was a compilation error.
}
// Check if we should flush now.
- if (value == ((heap->sweep_generation() - kRegExpCodeThreshold) & 0xff)) {
+ if (value == ((heap->ms_count() - kRegExpCodeThreshold) & 0xff)) {
re->SetDataAt(JSRegExp::code_index(is_one_byte),
Smi::FromInt(JSRegExp::kUninitializedValue));
re->SetDataAt(JSRegExp::saved_code_index(is_one_byte),