Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(403)

Issue 6594074: X64: Add inline SwapElements to fundamental code generator on x64 platform. (Closed)

Created:
9 years, 9 months ago by William Hesse
Modified:
9 years, 7 months ago
Reviewers:
Lasse Reichstein
CC:
v8-dev
Visibility:
Public.

Description

X64: Add inline SwapElements to fundamental code generator on x64 platform. Committed: http://code.google.com/p/v8/source/detail?r=6995

Patch Set 1 #

Total comments: 6

Patch Set 2 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+66 lines, -0 lines) Patch
M src/x64/full-codegen-x64.cc View 1 1 chunk +66 lines, -0 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
William Hesse
9 years, 9 months ago (2011-03-01 12:47:49 UTC) #1
Lasse Reichstein
LGTM http://codereview.chromium.org/6594074/diff/1/src/x64/full-codegen-x64.cc File src/x64/full-codegen-x64.cc (right): http://codereview.chromium.org/6594074/diff/1/src/x64/full-codegen-x64.cc#newcode2971 src/x64/full-codegen-x64.cc:2971: VisitForStackValue(args->at(2)); Could we put the values directly into ...
9 years, 9 months ago (2011-03-01 14:01:49 UTC) #2
William Hesse
9 years, 9 months ago (2011-03-01 14:29:52 UTC) #3
http://codereview.chromium.org/6594074/diff/1/src/x64/full-codegen-x64.cc
File src/x64/full-codegen-x64.cc (right):

http://codereview.chromium.org/6594074/diff/1/src/x64/full-codegen-x64.cc#new...
src/x64/full-codegen-x64.cc:2971: VisitForStackValue(args->at(2));
On 2011/03/01 14:01:50, Lasse Reichstein wrote:
> Could we put the values directly into registers, and only push them if we need
> to go to runtime? Or will we always need to push them anyway, to free up
> registers?

This is a direct copy of ia32 code, where there is a register shortage.  I think
it is better to keep the code parallel, in this case.

http://codereview.chromium.org/6594074/diff/1/src/x64/full-codegen-x64.cc#new...
src/x64/full-codegen-x64.cc:2997: __ movq(index_2, Operand(rsp, 0));
On 2011/03/01 14:01:50, Lasse Reichstein wrote:
> Mutiply by kPointerSize here too, just for consistency.

Done.

http://codereview.chromium.org/6594074/diff/1/src/x64/full-codegen-x64.cc#new...
src/x64/full-codegen-x64.cc:3001: __ movq(temp, FieldOperand(object,
JSArray::kLengthOffset));
On 2011/03/01 14:01:50, Lasse Reichstein wrote:
> Make a comment that since the array is in fast elements mode, the length must
be
> a smi.
Done.
Yes, it is always a smi.


> (Do we enforce that in ToUInt32, or could we cheat it to be a HeapNumber
holding
> a potential smi value by doing something like:
>   arr.length = 87.5 / 2.5;
>

Powered by Google App Engine
This is Rietveld 408576698