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

Issue 1715003: Add inlining of property load on ARM... (Closed)

Created:
10 years, 8 months ago by Søren Thygesen Gjesse
Modified:
9 years, 7 months ago
CC:
v8-dev
Visibility:
Public.

Description

Add inlining of property load on ARM Generate inlined named property load for in-object properties. This uses the same mechanism as on the Intel platforms with the map check and load instruction of the inlined code being patched by the inline cache code. The map check is patched through the normal constant pool patching and the load instruction is patched in place. Committed: http://code.google.com/p/v8/source/detail?r=4468

Patch Set 1 #

Patch Set 2 : '' #

Total comments: 13

Patch Set 3 : '' #

Patch Set 4 : '' #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+237 lines, -50 lines) Patch
M src/arm/assembler-arm.h View 1 2 1 chunk +11 lines, -4 lines 0 comments Download
M src/arm/assembler-arm.cc View 1 2 2 chunks +40 lines, -2 lines 0 comments Download
M src/arm/codegen-arm.h View 1 chunk +4 lines, -0 lines 0 comments Download
M src/arm/codegen-arm.cc View 1 2 5 chunks +91 lines, -29 lines 0 comments Download
M src/arm/full-codegen-arm.cc View 1 2 4 chunks +21 lines, -9 lines 0 comments Download
M src/arm/ic-arm.cc View 1 2 3 2 chunks +50 lines, -5 lines 1 comment Download
M src/arm/virtual-frame-arm.h View 1 1 chunk +5 lines, -0 lines 0 comments Download
M src/arm/virtual-frame-arm.cc View 1 chunk +14 lines, -0 lines 0 comments Download
M test/mjsunit/debug-stepin-accessor.js View 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 5 (0 generated)
Søren Thygesen Gjesse
10 years, 8 months ago (2010-04-21 13:11:19 UTC) #1
Mads Ager (chromium)
LGTM http://codereview.chromium.org/1715003/diff/9001/10006 File src/arm/assembler-arm.cc (right): http://codereview.chromium.org/1715003/diff/9001/10006#newcode359 src/arm/assembler-arm.cc:359: return ((instr & Imm24Mask) << 8) >> 6; ...
10 years, 8 months ago (2010-04-21 14:59:00 UTC) #2
Søren Thygesen Gjesse
http://codereview.chromium.org/1715003/diff/9001/10006 File src/arm/assembler-arm.cc (right): http://codereview.chromium.org/1715003/diff/9001/10006#newcode359 src/arm/assembler-arm.cc:359: return ((instr & Imm24Mask) << 8) >> 6; On ...
10 years, 8 months ago (2010-04-22 07:16:28 UTC) #3
Erik Corry
I'm a little late with this, but the last point seems worth thinking about. http://codereview.chromium.org/1715003/diff/9001/10006 ...
10 years, 8 months ago (2010-04-22 20:10:40 UTC) #4
Søren Thygesen Gjesse
10 years, 8 months ago (2010-04-22 21:44:45 UTC) #5
On 2010/04/22 20:10:40, Erik Corry wrote:
> I'm a little late with this, but the last point seems worth thinking about.
> 
> http://codereview.chromium.org/1715003/diff/9001/10006
> File src/arm/assembler-arm.cc (right):
> 
> http://codereview.chromium.org/1715003/diff/9001/10006#newcode352
> src/arm/assembler-arm.cc:352: bool Assembler::IsB(Instr instr) {
> Can we call this IsBranch?  The instruction is called b, but this name is a
> little terse.
> 
> http://codereview.chromium.org/1715003/diff/9001/10006#newcode357
> src/arm/assembler-arm.cc:357: int Assembler::GetBOffset(Instr instr) {
> And here
> 
> http://codereview.chromium.org/1715003/diff/9001/10005
> File src/arm/codegen-arm.h (right):
> 
> http://codereview.chromium.org/1715003/diff/9001/10005#newcode291
> src/arm/codegen-arm.h:291: // stack, and remain there.
> remain -> remains
> 
> http://codereview.chromium.org/1715003/diff/23002/27009
> File src/arm/ic-arm.cc (right):
> 
> http://codereview.chromium.org/1715003/diff/23002/27009#newcode596
> src/arm/ic-arm.cc:596: ldr_property_instr, offset - kHeapObjectTag);
> What if the offset doesn't fit in the immediate field that the instruction
> provides?

Thanks for the comments Erik. They have been addressed as part of
http://codereview.chromium.org/1758003.

Powered by Google App Engine
This is Rietveld 408576698