mips32 port looks good.
Some register usage/naming issues on mips64: the mips64 ABI allows passing
of 8
arguments in registers, and therefore, the 'conventional' names of
registers 4
through 15 were changed for mips64, as compared to mips32 (allows 4
arguments
passed in registers):
mips32 regs 4-15: [a0-a3],[t0-t7]
mips64 regs 4-15: [a0-a7],[t0-t3]
We decided to follow these conventions within the mips64 port, since this
is in
common usage in other projects.
I've noted the changes inline.
https://codereview.chromium.org/1237813002/diff/20001/src/mips64/builtins-mips64.cc
File src/mips64/builtins-mips64.cc (right):
https://codereview.chromium.org/1237813002/diff/20001/src/mips64/builtins-mips64.cc#newcode1511
src/mips64/builtins-mips64.cc:1511: __ ld(t0, MemOperand(fp,
kNewTargetOffset));
t0 -> a4
https://codereview.chromium.org/1237813002/diff/20001/src/mips64/code-stubs-mips64.cc
File src/mips64/code-stubs-mips64.cc (right):
https://codereview.chromium.org/1237813002/diff/20001/src/mips64/code-stubs-mips64.cc#newcode2784
src/mips64/code-stubs-mips64.cc:2784: // t0 : original constructor (for
IsSuperConstructorCall)
Please change t0 -> a4
https://codereview.chromium.org/1237813002/diff/20001/src/mips64/code-stubs-mips64.cc#newcode2790
src/mips64/code-stubs-mips64.cc:2790: __ Branch(&slow, ne, a4,
Operand(JS_FUNCTION_TYPE));
Please change these 3 uses of a4 -> a5
https://codereview.chromium.org/1237813002/diff/20001/src/mips64/code-stubs-mips64.cc#newcode2794
src/mips64/code-stubs-mips64.cc:2794: __ push(t0);
Please use a4 here and in pop() below.
https://codereview.chromium.org/1237813002/diff/20001/src/mips64/code-stubs-mips64.cc#newcode2824
src/mips64/code-stubs-mips64.cc:2824: __ mov(a3, t0);
t0 -> a4
https://codereview.chromium.org/1237813002/diff/20001/src/mips64/code-stubs-mips64.cc#newcode2839
src/mips64/code-stubs-mips64.cc:2839: // a4: object type
a4 -> a5 for object type
https://codereview.chromium.org/1237813002/diff/20001/src/mips64/code-stubs-mips64.cc#newcode2842
src/mips64/code-stubs-mips64.cc:2842: __ Branch(&non_function_call, ne,
a4, Operand(JS_FUNCTION_PROXY_TYPE));
a4 -> a5
https://codereview.chromium.org/1237813002/diff/20001/src/mips64/full-codegen-mips64.cc
File src/mips64/full-codegen-mips64.cc (right):
https://codereview.chromium.org/1237813002/diff/20001/src/mips64/full-codegen-mips64.cc#newcode3388
src/mips64/full-codegen-mips64.cc:3388: __ mov(t0, result_register());
t0 -> a4 here, and in comment above.
https://codereview.chromium.org/1237813002/diff/20001/src/mips64/full-codegen-mips64.cc#newcode4348
src/mips64/full-codegen-mips64.cc:4348: __ ld(t0, MemOperand(sp, 1 *
kPointerSize));
t0 -> a4 here and in comment.
https://codereview.chromium.org/1237813002/diff/20001/src/mips64/interface-descriptors-mips64.cc
File src/mips64/interface-descriptors-mips64.cc (right):
https://codereview.chromium.org/1237813002/diff/20001/src/mips64/interface-descriptors-mips64.cc#newcode176
src/mips64/interface-descriptors-mips64.cc:176: Register registers[] =
{a0, a1, t0, a2};
t0 ->a4 here and in comment above (line 173)
https://codereview.chromium.org/1237813002/
--
--
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.