Reviewers: Michael Starzinger,

Message:
Feedback addressed, landing.


http://codereview.chromium.org/10735020/diff/21001/src/arm/lithium-codegen-arm.cc
File src/arm/lithium-codegen-arm.cc (right):

http://codereview.chromium.org/10735020/diff/21001/src/arm/lithium-codegen-arm.cc#newcode2786
src/arm/lithium-codegen-arm.cc:2786: __ add(scratch, elements,
Operand(key, LSL, kPointerSizeLog2 - 1));
On 2012/07/19 21:02:23, Michael Starzinger wrote:
Can we use kSmiTagSize here?

Done.

http://codereview.chromium.org/10735020/diff/21001/src/arm/lithium-codegen-arm.cc#newcode2818
src/arm/lithium-codegen-arm.cc:2818: ? (element_size_shift - 1) :
element_size_shift;
On 2012/07/19 21:02:23, Michael Starzinger wrote:
Likewise.

Done.

http://codereview.chromium.org/10735020/diff/21001/src/arm/lithium-codegen-arm.cc#newcode2874
src/arm/lithium-codegen-arm.cc:2874: return MemOperand(base, key, LSR,
1);
On 2012/07/19 21:02:23, Michael Starzinger wrote:
Likewise.

Done.

http://codereview.chromium.org/10735020/diff/21001/src/arm/lithium-codegen-arm.cc#newcode2882
src/arm/lithium-codegen-arm.cc:2882: return MemOperand(base, scratch0(),
LSR, 1);
On 2012/07/19 21:02:23, Michael Starzinger wrote:
Likewise.

Done.

http://codereview.chromium.org/10735020/diff/21001/src/arm/lithium-codegen-arm.cc#newcode2904
src/arm/lithium-codegen-arm.cc:2904: ? (element_size_shift - 1) :
element_size_shift;
On 2012/07/19 21:02:23, Michael Starzinger wrote:
Likewise.

Done.

http://codereview.chromium.org/10735020/diff/21001/src/arm/lithium-codegen-arm.cc#newcode3844
src/arm/lithium-codegen-arm.cc:3844: __ add(scratch, elements,
Operand(key, LSL, kPointerSizeLog2 - 1));
On 2012/07/19 21:02:23, Michael Starzinger wrote:
Likewise.

Done.

http://codereview.chromium.org/10735020/diff/21001/src/ia32/lithium-codegen-ia32.cc
File src/ia32/lithium-codegen-ia32.cc (right):

http://codereview.chromium.org/10735020/diff/21001/src/ia32/lithium-codegen-ia32.cc#newcode2706
src/ia32/lithium-codegen-ia32.cc:2706: if (key_representation.IsTagged()
&& shift_size >= 1) {
On 2012/07/19 21:02:23, Michael Starzinger wrote:
Can we also make this condition use !ExternalArrayOpRequiresTemp(...)
and
instead ASSERT(shift_size >= kSmiTagSize)?

Done.

http://codereview.chromium.org/10735020/diff/21001/src/ia32/lithium-codegen-ia32.cc#newcode2707
src/ia32/lithium-codegen-ia32.cc:2707: shift_size -= 1;
On 2012/07/19 21:02:23, Michael Starzinger wrote:
Can we use kSmiTagSize here?

Done.

Description:
Optimize Smi keys for KeyedLoads

Allows KeyeLoad/KeyedStore operations where the key is a Smi to fold the
untagging of the key into the element offset calculation.

Please review this at http://codereview.chromium.org/10735020/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files:
  M src/arm/lithium-arm.h
  M src/arm/lithium-arm.cc
  M src/arm/lithium-codegen-arm.h
  M src/arm/lithium-codegen-arm.cc
  M src/hydrogen-instructions.h
  M src/hydrogen.cc
  M src/ia32/lithium-codegen-ia32.h
  M src/ia32/lithium-codegen-ia32.cc
  M src/ia32/lithium-ia32.h
  M src/ia32/lithium-ia32.cc
  M src/x64/lithium-codegen-x64.cc
  M src/x64/lithium-x64.h
  M src/x64/lithium-x64.cc
  M test/mjsunit/external-array.js


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

Reply via email to