LGTM!

http://codereview.chromium.org/464002/diff/1/4
File src/arm/codegen-arm.cc (right):

http://codereview.chromium.org/464002/diff/1/4#newcode1779
src/arm/codegen-arm.cc:1779: frame_->EmitPush(r0);  // push the object
being iterated over
!punctuatioN

http://codereview.chromium.org/464002/diff/1/4#newcode1793
src/arm/codegen-arm.cc:1793: __ cmp(r2,
Operand(Factory::empty_fixed_array()));
This gets code-generated as a pc-relative load followed by a compare.
Please use LoadRoot instead to avoid the constant pool entry and reloc
info.

http://codereview.chromium.org/464002/diff/1/4#newcode1800
src/arm/codegen-arm.cc:1800: __ cmp(r2,
Operand(Factory::empty_descriptor_array()));
And here.

http://codereview.chromium.org/464002/diff/1/4#newcode1812
src/arm/codegen-arm.cc:1812: __ cmp(r2,
Operand(Factory::empty_fixed_array()));
And here (perhaps you can reuse the register so you don't have to reload
the root).

http://codereview.chromium.org/464002/diff/1/4#newcode1817
src/arm/codegen-arm.cc:1817: __ cmp(r1, Operand(Factory::null_value()));
And here.

http://codereview.chromium.org/464002/diff/1/4#newcode1845
src/arm/codegen-arm.cc:1845: __ mov(r1, Operand(r0));
Unnecessary instruction! (not your fault)

http://codereview.chromium.org/464002/diff/1/3
File src/x64/codegen-x64.cc (right):

http://codereview.chromium.org/464002/diff/1/3#newcode1680
src/x64/codegen-x64.cc:1680: __ Cmp(rdx, Factory::empty_fixed_array());
We have CompareRoot for this.  Same speed but more compact.

http://codereview.chromium.org/464002/diff/1/3#newcode1687
src/x64/codegen-x64.cc:1687: __ Cmp(rdx,
Factory::empty_descriptor_array());
And here

http://codereview.chromium.org/464002/diff/1/3#newcode1699
src/x64/codegen-x64.cc:1699: __ Cmp(rdx, Factory::empty_fixed_array());
And here

http://codereview.chromium.org/464002

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

Reply via email to