I still need to fix creation and processing of the deferred phantom callback
queue in scavenges (works for mark-sweep).
https://codereview.chromium.org/753553002/diff/80001/include/v8.h
File include/v8.h (right):
https://codereview.chromium.org/753553002/diff/80001/include/v8.h#newcode510
include/v8.h:510: V8_INLINE void Empty() { val_ = NULL; }
On 2014/12/02 10:25:59, jochen (slow) wrote:
what do you need Empty() for?
It seems I don't need it any more. Removed.
https://codereview.chromium.org/753553002/diff/80001/include/v8.h#newcode565
include/v8.h:565: int internalFieldOffset1, int internalFieldOffset2);
On 2014/12/02 10:25:59, jochen (slow) wrote:
internal_field_index1
Done.
https://codereview.chromium.org/753553002/diff/80001/src/global-handles.cc
File src/global-handles.cc (right):
https://codereview.chromium.org/753553002/diff/80001/src/global-handles.cc#newcode43
src/global-handles.cc:43: INTERNAL_FIELDS_WEAK // Embedded gets 2
internal fields from dying object.
On 2014/12/02 10:25:59, jochen (slow) wrote:
Embedder
Done.
https://codereview.chromium.org/753553002/diff/80001/src/global-handles.cc#newcode272
src/global-handles.cc:272: set_internal_fields(internal_field_index1,
internal_field_index2);
On 2014/12/02 10:25:59, jochen (slow) wrote:
is there a check somewhere that the object actually has that many
internal
fields?
Yes, it's in InternalFieldOK, called by SlowGetInternalField, called by
GetInternalField (if checks are enabled).
https://codereview.chromium.org/753553002/diff/80001/src/heap/mark-compact.cc
File src/heap/mark-compact.cc (right):
https://codereview.chromium.org/753553002/diff/80001/src/heap/mark-compact.cc#newcode2219
src/heap/mark-compact.cc:2219: ProcessMarkingDeque();
On 2014/12/02 10:25:59, jochen (slow) wrote:
this is not needed, because the following call to
ProcessEphemeralMarking
processes the deque anyways
I think this is wrong, and it is needed.
Nothing in the ProcessEphemeralMarking will check for an overflowed
marking deque, before the work_to_do variable is set. That means it can
be incorrectly set to false, and the ephemeral iteration can terminate
early.
https://codereview.chromium.org/753553002/
--
--
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.