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

Issue 6164003: Implement DoApplyArguments. (Closed)

Created:
9 years, 11 months ago by Karl Klose
Modified:
9 years, 7 months ago
CC:
v8-dev
Visibility:
Public.

Description

Implement DoApplyArguments. ARM: Implement DoApplyArguments in the lithium code generator. This patch also introduces an optional SafepointGenerator argument to InvokeFunction, InvokeCode and InvokeProloque. BUG= TEST=

Patch Set 1 #

Patch Set 2 : Removed code in comment. #

Patch Set 3 : Removed code in comment. #

Total comments: 6

Patch Set 4 : Adress comments. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+76 lines, -10 lines) Patch
M src/arm/lithium-codegen-arm.cc View 1 2 3 1 chunk +59 lines, -1 line 0 comments Download
M src/arm/macro-assembler-arm.h View 1 2 3 4 chunks +6 lines, -4 lines 0 comments Download
M src/arm/macro-assembler-arm.cc View 1 2 3 5 chunks +11 lines, -5 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
Karl Klose
9 years, 11 months ago (2011-01-11 11:37:23 UTC) #1
Søren Thygesen Gjesse
LGTM http://codereview.chromium.org/6164003/diff/5001/src/arm/lithium-codegen-arm.cc File src/arm/lithium-codegen-arm.cc (right): http://codereview.chromium.org/6164003/diff/5001/src/arm/lithium-codegen-arm.cc#newcode1741 src/arm/lithium-codegen-arm.cc:1741: __ mov(receiver, length); Please add a comment why ...
9 years, 11 months ago (2011-01-11 12:01:28 UTC) #2
Karl Klose
9 years, 11 months ago (2011-01-11 13:04:33 UTC) #3
http://codereview.chromium.org/6164003/diff/5001/src/arm/lithium-codegen-arm.cc
File src/arm/lithium-codegen-arm.cc (right):

http://codereview.chromium.org/6164003/diff/5001/src/arm/lithium-codegen-arm....
src/arm/lithium-codegen-arm.cc:1741: __ mov(receiver, length);
On 2011/01/11 12:01:28, Søren Gjesse wrote:
> Please add a comment why we are adding 4 here, and use kPointerSize instead of
> 4.

Done.

http://codereview.chromium.org/6164003/diff/5001/src/arm/lithium-codegen-arm....
src/arm/lithium-codegen-arm.cc:1746: Label loop;
I do not see large numbers of arguments, so I did not change it.
On 2011/01/11 12:01:28, Søren Gjesse wrote:
> I don't know if it will make a difference, but we have 4 free registers, so we
> could use load/store multiple with 4 elements at the time after aligning
length
> by 0-3 initial load/stores by checking the two lower bit s of length.

http://codereview.chromium.org/6164003/diff/5001/src/arm/lithium-codegen-arm....
src/arm/lithium-codegen-arm.cc:1758: v8::internal::ParameterCount
actual(receiver);
On 2011/01/11 12:01:28, Søren Gjesse wrote:
> Maybe comment here that receiver stores the original count and is r0 which is
> mandated by InvokeFunction.

Done.

Powered by Google App Engine
This is Rietveld 408576698