Chromium Code Reviews

Issue 8366031: MIPS: Porting r9605 to arm (elements kind conversion in generated code). (Closed)

Created:
9 years, 2 months ago by Paul Lind
Modified:
9 years, 2 months ago
Reviewers:
danno, Yang
CC:
v8-dev
Visibility:
Public.

Description

MIPS: Porting r9605 to arm (elements kind conversion in generated code). Port r9690 (857eacf) BUG= TEST= Committed: http://code.google.com/p/v8/source/detail?r=9745

Patch Set 1 #

Patch Set 2 : port r9696, Bugfix for r9690. #

Patch Set 3 : port r9704, Optimize fast element conversion in arm using batch store/loads. #

Patch Set 4 : some mips-specific fixes... #

Patch Set 5 : port r9717, Fix x64 and ARM builds. #

Patch Set 6 : port non-crankshaft parts of 9702, Introduce HTransitionElementsKind instruction. #

Patch Set 7 : port r9724, Refactor elements kind conversion. #

Total comments: 6

Patch Set 8 : Remove unneeded moves to v0, per review comments. #

Unified diffs Side-by-side diffs Stats (+309 lines, -4 lines)
M src/mips/code-stubs-mips.cc View 1 chunk +7 lines, -0 lines 0 comments
M src/mips/codegen-mips.h View 1 chunk +0 lines, -1 line 0 comments
M src/mips/codegen-mips.cc View 2 chunks +257 lines, -0 lines 0 comments
M src/mips/ic-mips.cc View 1 chunk +41 lines, -0 lines 0 comments
M src/mips/macro-assembler-mips.cc View 1 chunk +1 line, -0 lines 0 comments
M src/mips/stub-cache-mips.cc View 2 chunks +3 lines, -3 lines 0 comments

Messages

Total messages: 4 (0 generated)
Paul Lind
Yang, Danno - This submission covers the following commits from the past couple days: 9690 ...
9 years, 2 months ago (2011-10-21 05:29:02 UTC) #1
Yang
LGTM, but got one question. http://codereview.chromium.org/8366031/diff/1006/src/mips/codegen-mips.cc File src/mips/codegen-mips.cc (right): http://codereview.chromium.org/8366031/diff/1006/src/mips/codegen-mips.cc#newcode79 src/mips/codegen-mips.cc:79: __ mov(v0, a0); Why ...
9 years, 2 months ago (2011-10-21 07:43:33 UTC) #2
Paul Lind
Hi Yang, thanks for catching those extra reg-moves. They are gone now. thanks, paul http://codereview.chromium.org/8366031/diff/1006/src/mips/codegen-mips.cc ...
9 years, 2 months ago (2011-10-21 16:39:49 UTC) #3
Yang
9 years, 2 months ago (2011-10-21 18:36:39 UTC) #4
On 2011/10/21 16:39:49, Paul Lind wrote:
> Hi Yang, thanks for catching those extra reg-moves. They are gone now. 
> 
> thanks,
> 
> paul
> 
> http://codereview.chromium.org/8366031/diff/1006/src/mips/codegen-mips.cc
> File src/mips/codegen-mips.cc (right):
> 
>
http://codereview.chromium.org/8366031/diff/1006/src/mips/codegen-mips.cc#new...
> src/mips/codegen-mips.cc:79: __ mov(v0, a0);
> On 2011/10/21 07:43:34, Yang wrote:
> > Why is a0 moved to v0?
> > KeyedStoreStubCompiler::GenerateStoreFastElement that follows expects value
in
> > a0 as well.
> > In the case that the generator is called from crankshaft, no value or key
> exist
> > in the first place.
> 
> Yep, you are correct, it is not needed here. Removed.
> 
> This is a common pattern for mips, needed in lots of places, and we just
> found/fixed a bug where this was needed in porting FastElementsConversionStub
> earlier in this commit. So here I guess we errored in the other direction.
> 
>
http://codereview.chromium.org/8366031/diff/1006/src/mips/codegen-mips.cc#new...
> src/mips/codegen-mips.cc:200: __ mov(v0, a0);
> On 2011/10/21 07:43:34, Yang wrote:
> > Ditto.
> 
> Removed.
> 
>
http://codereview.chromium.org/8366031/diff/1006/src/mips/codegen-mips.cc#new...
> src/mips/codegen-mips.cc:311: __ mov(v0, a0);
> On 2011/10/21 07:43:34, Yang wrote:
> > Ditto.
> 
> Removed.

LGTM, landing.

Powered by Google App Engine