On 2013/01/11 17:43:38, Jakob wrote:
https://codereview.chromium.org/11852007/diff/1/src/x64/assembler-x64.h
File src/x64/assembler-x64.h (right):


https://codereview.chromium.org/11852007/diff/1/src/x64/assembler-x64.h#newcode422
src/x64/assembler-x64.h:422: explicit Operand(Register reg);
On x64 so far, an Operand always means a memory access, and I'd like to keep
that consistency. So please don't add this constructor. Instead, please
implement an overloaded version of movzxwl that takes two registers as input
(similar to how we have two versions of movsxlq).

https://codereview.chromium.org/11852007/diff/1/src/x64/lithium-codegen-x64.cc
File src/x64/lithium-codegen-x64.cc (right):


https://codereview.chromium.org/11852007/diff/1/src/x64/lithium-codegen-x64.cc#newcode3597
src/x64/lithium-codegen-x64.cc:3597: __ movl(rcx, FieldOperand(rbx,
ByteArray::kHeaderSize));
Is there a reason you're swapping usage of rax and rcx?

Hi Jakob,
Thanks for review
Upload the change based on comment. Please review again.
For the swapping of rax and rcx, it is to save one byte JIT code when emitting
'and reg, 0x3fffff'. A small improve

https://codereview.chromium.org/11852007/

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

Reply via email to