This stuff is getting hairy. :) In particular, I'm uncertain about the GC
safety of the pushing of the object that passed the type check. Could you
at
least add a comment explaining why it is safe?
Please add some API tests for this. Insert '__ int3();' in the branch that
you
are trying to test to verify that you hit it and see if you can make the
test
exhaustive.
http://codereview.chromium.org/573003/diff/1009/11
File src/builtins.cc (right):
http://codereview.chromium.org/573003/diff/1009/11#newcode520
src/builtins.cc:520: false/* is_construct */,
Could you add a named 'bool is_construct = false;' and use that instead
of having a comment here?
http://codereview.chromium.org/573003/diff/1009/15
File src/ia32/stub-cache-ia32.cc (right):
http://codereview.chromium.org/573003/diff/1009/15#newcode492
src/ia32/stub-cache-ia32.cc:492: // So far the most popular case for
failed interceptor is
I'm not sure I understand this comment, could you expand or just state
that you only consider optimizing the call if it is a call of a constant
function property?
http://codereview.chromium.org/573003/diff/1009/15#newcode730
src/ia32/stub-cache-ia32.cc:730: __ push(Immediate(0));
Please explicitly smi tag: __ push(Immediate(Smi::FromInt(0)));
Are you in an internal frame when you push this so the GC knows about
the value, or are you 100% sure that a GC cannot happen between the time
when you push on the stack and the time when you pop again?
http://codereview.chromium.org/573003/diff/1009/15#newcode1248
src/ia32/stub-cache-ia32.cc:1248: __ push(Immediate(0));
Please explicitly Smi tag: __ push(Immediate(Smi::FromInt(0)))
http://codereview.chromium.org/573003/diff/1009/18
File src/v8-counters.h (right):
http://codereview.chromium.org/573003/diff/1009/18#newcode146
src/v8-counters.h:146: SC(call_const_interceptor_fast_api,
V8.CallConstInterceptorFastApi) \
Please right align all the '\'
http://codereview.chromium.org/573003
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev