LGTM. But a couple nits, and a suggestion for a follow-on small
optimization.
https://codereview.chromium.org/954863002/diff/40001/src/mips/lithium-codegen-mips.cc
File src/mips/lithium-codegen-mips.cc (right):
https://codereview.chromium.org/954863002/diff/40001/src/mips/lithium-codegen-mips.cc#newcode2660
src/mips/lithium-codegen-mips.cc:2660: Register instance_type =
scratch1();
Suggest adding DCHECK(!instance_type.is(temp));
DCHECK(!instance_type.is(temp2)); here
https://codereview.chromium.org/954863002/diff/40001/src/mips/macro-assembler-mips.cc
File src/mips/macro-assembler-mips.cc (right):
https://codereview.chromium.org/954863002/diff/40001/src/mips/macro-assembler-mips.cc#newcode4332
src/mips/macro-assembler-mips.cc:4332: lw(result,
FieldMemOperand(result, Map::kConstructorOrBackPointerOffset));
If we know (via DCHECK) that Map::kConstructorOrBackPointerOffset is <
int16_t, then the lw() will be single instruction and could be moved
into branch delay slot of the Branch(&loop).
Since it is late, maybe you could do that as a second (well-tested) CL
tomorrow, and not take a chance on breaking the build in this CL. Same
for mips64.
https://codereview.chromium.org/954863002/diff/40001/src/mips64/lithium-codegen-mips64.cc
File src/mips64/lithium-codegen-mips64.cc (right):
https://codereview.chromium.org/954863002/diff/40001/src/mips64/lithium-codegen-mips64.cc#newcode2621
src/mips64/lithium-codegen-mips64.cc:2621: Register instance_type =
scratch1();
Suggest adding DCHECK(!instance_type.is(temp));
DCHECK(!instance_type.is(temp2)); here
https://codereview.chromium.org/954863002/
--
--
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.