LGTM.

Q: do you have most fresh numbers for performance impact?

As a thought: if even a single move counts, couldn't we squeeze next and limit into a single pointer? For example, if we properly align blocks and allocate in 2^n blocks, next could be easily obtained from next like something like next &
0xffff0000 + 0x10000.


http://codereview.chromium.org/3792003/diff/43019/13031
File src/ia32/macro-assembler-ia32.cc (right):

http://codereview.chromium.org/3792003/diff/43019/13031#newcode1088
src/ia32/macro-assembler-ia32.cc:1088: void
MacroAssembler::TailCallApiFunction(ApiFunction* function,
completely optional: if we ever consider different strategy for handling
of empty returned results (think of interceptors), it might be handy to
have a hook for it already---just pass on empty result and come back
labels.

http://codereview.chromium.org/3792003/diff/43019/13032
File src/ia32/macro-assembler-ia32.h (right):

http://codereview.chromium.org/3792003/diff/43019/13032#newcode484
src/ia32/macro-assembler-ia32.h:484: // returned value from handle and
propogates exceptions.
maybe add some words about what this macro expects in regard of stack,
parameter passing, etc.

http://codereview.chromium.org/3792003/diff/43019/13038
File src/x64/macro-assembler-x64.cc (right):

http://codereview.chromium.org/3792003/diff/43019/13038#newcode518
src/x64/macro-assembler-x64.cc:518: // rsi is only callee-save on Win64.
On other platforms it must be restored.
as was discussed offline, that's not the best explanation why it is
allowed not to restore base_reg on Win64

http://codereview.chromium.org/3792003/diff/43019/13039
File src/x64/macro-assembler-x64.h (right):

http://codereview.chromium.org/3792003/diff/43019/13039#newcode824
src/x64/macro-assembler-x64.h:824: void TailCallApiFunction(ApiFunction*
function, int stack_space);
Ditto for better documentation

http://codereview.chromium.org/3792003/show

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to