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

Issue 2804029: Implement IC for storing to dictionary case objects.... (Closed)

Created:
10 years, 5 months ago by Mads Ager (chromium)
Modified:
9 years, 7 months ago
Reviewers:
Erik Corry
CC:
v8-dev
Visibility:
Public.

Description

Implement IC for storing to dictionary case objects. The IC stub is completely generic, so there will only be one such stub in the system. Added a new overloaded version of the macro assembler RecordWrite method for cases where we have the address we store to computed up front. Committed: http://code.google.com/p/v8/source/detail?r=4991

Patch Set 1 #

Total comments: 8

Patch Set 2 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+709 lines, -171 lines) Patch
M src/arm/codegen-arm.cc View 1 chunk +2 lines, -1 line 0 comments Download
M src/arm/ic-arm.cc View 7 chunks +140 lines, -39 lines 0 comments Download
M src/arm/macro-assembler-arm.h View 1 1 chunk +18 lines, -8 lines 0 comments Download
M src/arm/macro-assembler-arm.cc View 3 chunks +43 lines, -12 lines 0 comments Download
M src/builtins.h View 1 chunk +1 line, -0 lines 0 comments Download
M src/builtins.cc View 1 chunk +5 lines, -0 lines 0 comments Download
M src/ia32/ic-ia32.cc View 1 7 chunks +161 lines, -40 lines 0 comments Download
M src/ia32/macro-assembler-ia32.h View 1 1 chunk +16 lines, -5 lines 0 comments Download
M src/ia32/macro-assembler-ia32.cc View 2 chunks +33 lines, -5 lines 0 comments Download
M src/ic.h View 1 chunk +1 line, -0 lines 0 comments Download
M src/ic.cc View 2 chunks +12 lines, -10 lines 0 comments Download
M src/stub-cache.h View 2 chunks +3 lines, -1 line 0 comments Download
M src/stub-cache.cc View 2 chunks +6 lines, -1 line 0 comments Download
M src/v8-counters.h View 1 chunk +2 lines, -0 lines 0 comments Download
M src/x64/ic-x64.cc View 1 7 chunks +156 lines, -38 lines 0 comments Download
M src/x64/macro-assembler-x64.h View 1 1 chunk +16 lines, -5 lines 0 comments Download
M src/x64/macro-assembler-x64.cc View 2 chunks +29 lines, -6 lines 0 comments Download
A test/mjsunit/store-dictionary.js View 1 chunk +65 lines, -0 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
Mads Ager (chromium)
10 years, 5 months ago (2010-06-29 12:34:10 UTC) #1
Erik Corry
LGTM. I think it belongs in the documentation of the RecordWrite macros in the .h ...
10 years, 5 months ago (2010-06-30 10:35:15 UTC) #2
Mads Ager (chromium)
10 years, 5 months ago (2010-06-30 12:27:08 UTC) #3
http://codereview.chromium.org/2804029/diff/1/4
File src/arm/macro-assembler-arm.cc (right):

http://codereview.chromium.org/2804029/diff/1/4#newcode390
src/arm/macro-assembler-arm.cc:390: Register scratch) {
On 2010/06/30 10:35:15, Erik Corry wrote:
> In the .h file the register arguments are called object, address and value. 
> Here they are called object, address and scratch.

Updated the header file to call it scratch as well. We do not filter out smi
stores on ARM which is why it is just a scratch register and not necessarily the
value being stored.

I am adding a comment about filtering out smis to the header files as well.

http://codereview.chromium.org/2804029/diff/1/8
File src/ia32/ic-ia32.cc (right):

http://codereview.chromium.org/2804029/diff/1/8#newcode154
src/ia32/ic-ia32.cc:154: // storage. This function may fail to load a property
eventhough it is
On 2010/06/30 10:35:15, Erik Corry wrote:
> eventhough -> even though

Done.

http://codereview.chromium.org/2804029/diff/1/16
File src/x64/ic-x64.cc (right):

http://codereview.chromium.org/2804029/diff/1/16#newcode210
src/x64/ic-x64.cc:210: // storage. This function may fail to store a property
eventhough it
On 2010/06/30 10:35:15, Erik Corry wrote:
> eventhough
> 

Done.

http://codereview.chromium.org/2804029/diff/1/16#newcode221
src/x64/ic-x64.cc:221: Register r0,
On 2010/06/30 10:35:15, Erik Corry wrote:
> I find the names r0 and r1 very confusing considering that r12 and r13 are
real
> registers, but these are arguments.

Agreed. Changed to scratch0 and scratch1.

Powered by Google App Engine
This is Rietveld 408576698