LGTM with comments.

https://codereview.chromium.org/19638014/diff/1/src/deoptimizer.cc
File src/deoptimizer.cc (right):

https://codereview.chromium.org/19638014/diff/1/src/deoptimizer.cc#newcode486
src/deoptimizer.cc:486:
codes->at(i)->set_marked_for_deoptimization(true);
Maybe move marking for deoptimization to the places where the code is
added to the list? Then maintain invariant: code is in the list => code
is marked for deopt.

https://codereview.chromium.org/19638014/diff/1/src/mark-compact.cc
File src/mark-compact.cc (right):

https://codereview.chromium.org/19638014/diff/1/src/mark-compact.cc#newcode491
src/mark-compact.cc:491: // The gc_metadata field is used as a linked
list of code to deopt.
Maybe assert that code->gc_metadata() is optimized code or undefined or
0? To get at leat some check against overlapping usage of the field by
code flusher and deoptimizer.

https://codereview.chromium.org/19638014/diff/1/src/objects.cc
File src/objects.cc (right):

https://codereview.chromium.org/19638014/diff/1/src/objects.cc#newcode11354
src/objects.cc:11354: if (!code->marked_for_deoptimization())
codes.Add(code, &zone);
code->set_marked_for_deoptimization(true) after adding to the list would
make it more robust against duplicates.

https://codereview.chromium.org/19638014/diff/1/src/objects.h
File src/objects.h (right):

https://codereview.chromium.org/19638014/diff/1/src/objects.h#newcode4557
src/objects.h:4557: // unoptimized code. Optimized code can temporarily
store the head of
This comment is out of sync with code.

https://codereview.chromium.org/19638014/

--
--
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/groups/opt_out.


Reply via email to