Commit e06d4730 authored by jochen@chromium.org's avatar jochen@chromium.org

Explicitly initialize MarkCompactCollector and ExternalStringTable

BUG=none
R=dcarney@chromium.org
LOG=n

Review URL: https://codereview.chromium.org/143063003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18689 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent 6eb9e02b
......@@ -134,6 +134,7 @@ Heap::Heap()
last_gc_end_timestamp_(0.0),
marking_time_(0.0),
sweeping_time_(0.0),
mark_compact_collector_(this),
store_buffer_(this),
marking_(this),
incremental_marking_(this),
......@@ -152,6 +153,7 @@ Heap::Heap()
allocation_sites_scratchpad_length(0),
promotion_queue_(this),
configured_(false),
external_string_table_(this),
chunks_queued_for_free_(NULL),
relocation_mutex_(NULL) {
// Allow build-time customization of the max semispace size. Building
......@@ -177,8 +179,6 @@ Heap::Heap()
native_contexts_list_ = NULL;
array_buffers_list_ = Smi::FromInt(0);
allocation_sites_list_ = Smi::FromInt(0);
mark_compact_collector_.heap_ = this;
external_string_table_.heap_ = this;
// Put a dummy entry in the remembered pages so we can find the list the
// minidump even if there are no real unmapped pages.
RememberUnmappedPage(NULL, false);
......
......@@ -462,7 +462,7 @@ class ExternalStringTable {
void TearDown();
private:
ExternalStringTable() { }
explicit ExternalStringTable(Heap* heap) : heap_(heap) { }
friend class Heap;
......
......@@ -56,7 +56,7 @@ const char* Marking::kImpossibleBitPattern = "01";
// -------------------------------------------------------------------------
// MarkCompactCollector
MarkCompactCollector::MarkCompactCollector() : // NOLINT
MarkCompactCollector::MarkCompactCollector(Heap* heap) : // NOLINT
#ifdef DEBUG
state_(IDLE),
#endif
......@@ -70,7 +70,7 @@ MarkCompactCollector::MarkCompactCollector() : // NOLINT
sequential_sweeping_(false),
tracer_(NULL),
migration_slots_buffer_(NULL),
heap_(NULL),
heap_(heap),
code_flusher_(NULL),
encountered_weak_collections_(NULL),
have_code_to_deoptimize_(false) { }
......
......@@ -744,7 +744,7 @@ class MarkCompactCollector {
void MarkAllocationSite(AllocationSite* site);
private:
MarkCompactCollector();
explicit MarkCompactCollector(Heap* heap);
~MarkCompactCollector();
bool MarkInvalidatedCode();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment