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

Issue 2368001: Get rid of LoadAndSpill on ARM since Load() knows whether it is... (Closed)

Created:
10 years, 7 months ago by Erik Corry
Modified:
9 years, 7 months ago
CC:
v8-dev
Visibility:
Public.

Description

Get rid of LoadAndSpill on ARM since Load() knows whether it is in a spilled scope or not. Also get rid of some spilled scopes that we don't need any more. The generators for the %_ functions, CodeGenerator::Generate*, are now not spilled by default. Some of them (IsObject and related) have been converted to register allocated operation. Committed: http://code.google.com/p/v8/source/detail?r=4749

Patch Set 1 #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+162 lines, -150 lines) Patch
M src/arm/codegen-arm.h View 1 chunk +0 lines, -5 lines 0 comments Download
M src/arm/codegen-arm.cc View 60 chunks +145 lines, -133 lines 4 comments Download
M src/arm/macro-assembler-arm.h View 1 chunk +1 line, -1 line 0 comments Download
M src/arm/virtual-frame-arm.h View 1 chunk +1 line, -1 line 0 comments Download
M src/arm/virtual-frame-arm.cc View 5 chunks +15 lines, -10 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
Erik Corry
10 years, 7 months ago (2010-05-28 09:45:50 UTC) #1
Søren Thygesen Gjesse
LGTM http://codereview.chromium.org/2368001/diff/1/2 File src/arm/codegen-arm.cc (right): http://codereview.chromium.org/2368001/diff/1/2#newcode4058 src/arm/codegen-arm.cc:4058: Load(args->at(2)); Isn't SpillAll/AssertIsSpilled needed here? (I don't think ...
10 years, 7 months ago (2010-05-28 10:15:47 UTC) #2
Erik Corry
10 years, 7 months ago (2010-05-28 11:24:12 UTC) #3
http://codereview.chromium.org/2368001/diff/1/2
File src/arm/codegen-arm.cc (right):

http://codereview.chromium.org/2368001/diff/1/2#newcode4058
src/arm/codegen-arm.cc:4058: Load(args->at(2));
On 2010/05/28 10:15:47, Søren Gjesse wrote:
> Isn't SpillAll/AssertIsSpilled needed here? (I don't think %_Log is used when
> running our tests though)

Well spotted!  I think the real problem here is that a) it isn't tested properly
and b) it should be using VirtualFrame::CallRuntime instead.

http://codereview.chromium.org/2368001/diff/1/2#newcode4519
src/arm/codegen-arm.cc:4519: frame_->SpillAll();
On 2010/05/28 10:15:47, Søren Gjesse wrote:
> How about moving the SpillAll to CallStub?

CallStub is common for the light targets and I want to make some of the stubs
not spill, so for now I will leave it.

Powered by Google App Engine
This is Rietveld 408576698