Reviewers: Erik Corry,
Description:
Basic implementation of incremental marking.
Based on classic tri-color abstraction (white --- not seen, grey --- seen
and in
the marking stack, black --- seen and scanned) with a write barrier that
transfers black objects to grey when we assign to white object into field.
Currently write-barrier is out-lined (generated code just calls C function)
so
write-intensive applications are expected to show significant degradation.
Please review this at http://codereview.chromium.org/6542047/
SVN Base: https://v8.googlecode.com/svn/branches/experimental/gc
Affected files:
M src/SConscript
M src/arm/deoptimizer-arm.cc
M src/assembler.h
M src/assembler.cc
M src/builtins.cc
M src/compiler-intrinsics.h
M src/debug.cc
M src/deoptimizer.h
M src/deoptimizer.cc
M src/execution.h
M src/execution.cc
M src/flag-definitions.h
M src/heap-inl.h
M src/heap.h
M src/heap.cc
M src/ia32/assembler-ia32-inl.h
M src/ia32/deoptimizer-ia32.cc
M src/ia32/lithium-codegen-ia32.cc
M src/ia32/lithium-ia32.h
M src/ia32/lithium-ia32.cc
M src/ia32/macro-assembler-ia32.h
M src/ia32/macro-assembler-ia32.cc
M src/ia32/stub-cache-ia32.cc
M src/ic-inl.h
A src/incremental-marking.h
A src/incremental-marking.cc
M src/lithium-allocator.cc
M src/liveedit.cc
M src/mark-compact.h
M src/mark-compact.cc
M src/objects-inl.h
M src/objects.cc
M src/serialize.cc
M src/spaces-inl.h
M src/spaces.cc
M src/x64/deoptimizer-x64.cc
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev