http://codereview.chromium.org/6713075/diff/3002/src/heap.h File src/heap.h (right):
http://codereview.chromium.org/6713075/diff/3002/src/heap.h#newcode1788 src/heap.h:1788: ASSERT(object->IsHeapObject()); On 2011/03/21 16:54:23, Vyacheslav Egorov wrote:
Do we really want this?
Sometimes it's better to have an early detection of mark stack
corruption. This is inlined in some of our hottest GC functions. I'm going to follow the pattern in the entire rest of the VM and leave sanity tests to the debug version. http://codereview.chromium.org/6713075/diff/3002/src/mark-compact.cc File src/mark-compact.cc (right): http://codereview.chromium.org/6713075/diff/3002/src/mark-compact.cc#newcode246 src/mark-compact.cc:246: IncrementalMarking::MarkBlack(old_mark_bit); On 2011/03/21 17:16:30, Vyacheslav Egorov wrote:
new_mark_bit
Good catch. http://codereview.chromium.org/6713075/diff/3002/src/mark-compact.cc#newcode958 src/mark-compact.cc:958: Code* inlined_code = inlined->unchecked_shared()->unchecked_code(); On 2011/03/21 17:16:30, Vyacheslav Egorov wrote:
I think we will need to kill all unchecked_* getters.
add TODO(gc) for that.
Done. http://codereview.chromium.org/6713075/diff/3002/src/spaces.h File src/spaces.h (right): http://codereview.chromium.org/6713075/diff/3002/src/spaces.h#newcode121 src/spaces.h:121: class MarkBit { On 2011/03/21 16:54:23, Vyacheslav Egorov wrote:
// TODO(gc) ensure all operations inlined and object is exploded by
compiler on
all platforms.
Checked on gcc/x86. TODO added. http://codereview.chromium.org/6713075/ -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev
