Reviewers: ,
Message:
Hej Hannes,
This is the initial CL we talked about. Will follow up with emergency
memory and
initializing from some other free list chunk.
PTAL
https://codereview.chromium.org/1314493007/diff/20001/src/heap/spaces.h
File src/heap/spaces.h (left):
https://codereview.chromium.org/1314493007/diff/20001/src/heap/spaces.h#oldcode1713
src/heap/spaces.h:1713: void TearDown();
Let's remove one of the landmines and make TearDown() private and
implicitly called by the destructor (?)
https://codereview.chromium.org/1314493007/diff/20001/src/heap/spaces.h
File src/heap/spaces.h (right):
https://codereview.chromium.org/1314493007/diff/20001/src/heap/spaces.h#newcode1928
src/heap/spaces.h:1928: void CreateEmergencyMemory();
The plan is to move those to the compaction space (in some form) and
remove it here.
https://codereview.chromium.org/1314493007/diff/20001/src/heap/spaces.h#newcode1942
src/heap/spaces.h:1942: // Cleans up the space, frees all pages in this
space except those belonging
Just following decl order here.
https://codereview.chromium.org/1314493007/diff/20001/test/cctest/test-spaces.cc
File test/cctest/test-spaces.cc (right):
https://codereview.chromium.org/1314493007/diff/20001/test/cctest/test-spaces.cc#newcode344
test/cctest/test-spaces.cc:344: // OldSpace's destructor will tear down
the space and free up all pages.
This is a result of hiding TearDown(). Furthermore the other tests in
this file properly set up TestMemoryAllocatorScope. This change merely
adopts to the rest of the file.
https://codereview.chromium.org/1314493007/diff/20001/test/cctest/test-spaces.cc#newcode401
test/cctest/test-spaces.cc:401: TEST(CompactionSpace) {
Tests the page moving when the free list is empty. The followup will
contain logic for the free list and the emergency memory.
Description:
[heap] Add compaction space.
The CompactionSpace is temporarily used during compaction to hold migrated
objects. The payload is merged back into the corresponding space after
compaction.
Note the this is not the complete implementation and it is currently only
used
in a test.
BUG=chromium:524425
LOG=N
Please review this at https://codereview.chromium.org/1314493007/
Base URL: https://chromium.googlesource.com/v8/v8.git@master
Affected files (+166, -64 lines):
M src/heap/heap.cc
M src/heap/spaces.h
M src/heap/spaces.cc
M test/cctest/test-spaces.cc
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.