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

Issue 2801018: This change allows generating call-stubs for objects with normal (non-fast) o... (Closed)

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

Description

This change allows generating call-stubs for objects with normal (non-fast) objects in the prototype chain. StubCompiler::CheckPrototypes does ne If the top level object is a normal object the stub is stored in its prototype map. Lookup result of type NORMAL is not covered (since the normal stub currently doesn't check the prototype chain). Committed: http://code.google.com/p/v8/source/detail?r=5010

Patch Set 1 : '' #

Total comments: 28

Patch Set 2 : '' #

Total comments: 29

Patch Set 3 : '' #

Total comments: 20

Patch Set 4 : '' #

Patch Set 5 : '' #

Total comments: 8

Patch Set 6 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+554 lines, -206 lines) Patch
M src/arm/stub-cache-arm.cc View 1 2 3 4 5 1 chunk +2 lines, -1 line 0 comments Download
M src/globals.h View 1 2 3 4 5 1 chunk +6 lines, -0 lines 0 comments Download
M src/ia32/macro-assembler-ia32.h View 1 2 3 4 5 1 chunk +0 lines, -18 lines 0 comments Download
M src/ia32/macro-assembler-ia32.cc View 1 2 3 4 5 1 chunk +0 lines, -91 lines 0 comments Download
M src/ia32/stub-cache-ia32.cc View 1 2 3 4 5 15 chunks +262 lines, -32 lines 0 comments Download
M src/ic.h View 1 2 3 4 5 1 chunk +8 lines, -3 lines 0 comments Download
M src/ic.cc View 1 2 3 4 5 6 chunks +64 lines, -7 lines 0 comments Download
M src/ic-inl.h View 1 2 3 4 5 1 chunk +30 lines, -3 lines 0 comments Download
M src/objects.h View 1 2 3 4 5 3 chunks +9 lines, -4 lines 0 comments Download
M src/objects.cc View 1 2 3 4 5 1 chunk +0 lines, -2 lines 0 comments Download
M src/objects-inl.h View 1 2 3 4 5 3 chunks +11 lines, -2 lines 0 comments Download
M src/stub-cache.h View 1 2 3 4 5 5 chunks +25 lines, -7 lines 0 comments Download
M src/stub-cache.cc View 1 2 3 4 5 25 chunks +82 lines, -35 lines 0 comments Download
M src/v8-counters.h View 1 2 3 4 5 1 chunk +2 lines, -0 lines 0 comments Download
M src/x64/stub-cache-x64.cc View 1 2 3 4 5 1 chunk +2 lines, -1 line 0 comments Download
A test/mjsunit/call-stub.js View 1 chunk +51 lines, -0 lines 0 comments Download

Messages

Total messages: 9 (0 generated)
SeRya
10 years, 6 months ago (2010-06-25 12:34:08 UTC) #1
Mads Ager (chromium)
I would like to restrict this a bit at first. I don't think we want ...
10 years, 5 months ago (2010-06-28 11:40:08 UTC) #2
SeRya
I chancged the code to allow the new call-stubs for in the direct prototype of ...
10 years, 5 months ago (2010-06-29 13:24:31 UTC) #3
Mads Ager (chromium)
Next round of comments. I think there is still room for simplifications but we are ...
10 years, 5 months ago (2010-06-30 12:10:16 UTC) #4
SeRya
http://codereview.chromium.org/2801018/diff/10003/29008 File src/ia32/stub-cache-ia32.cc (right): http://codereview.chromium.org/2801018/diff/10003/29008#newcode108 src/ia32/stub-cache-ia32.cc:108: // Name must be a symbol. On 2010/06/30 12:10:16, ...
10 years, 5 months ago (2010-06-30 16:52:14 UTC) #5
Mads Ager (chromium)
A few more comments. http://codereview.chromium.org/2801018/diff/54003/66007 File src/ia32/stub-cache-ia32.cc (right): http://codereview.chromium.org/2801018/diff/54003/66007#newcode104 src/ia32/stub-cache-ia32.cc:104: // Helper function used to ...
10 years, 5 months ago (2010-07-01 10:11:29 UTC) #6
SeRya
http://codereview.chromium.org/2801018/diff/54003/66007 File src/ia32/stub-cache-ia32.cc (right): http://codereview.chromium.org/2801018/diff/54003/66007#newcode104 src/ia32/stub-cache-ia32.cc:104: // Helper function used to check that the dictionary ...
10 years, 5 months ago (2010-07-01 19:21:11 UTC) #7
Mads Ager (chromium)
LGTM Address these comments and let's land this. Please port to x64 and arm next ...
10 years, 5 months ago (2010-07-02 10:39:41 UTC) #8
SeRya
10 years, 5 months ago (2010-07-02 13:18:11 UTC) #9
http://codereview.chromium.org/2801018/diff/31022/77007
File src/ia32/stub-cache-ia32.cc (right):

http://codereview.chromium.org/2801018/diff/31022/77007#newcode153
src/ia32/stub-cache-ia32.cc:153: // If names of slots in range [0...n - 1) for
the hash value are not
On 2010/07/02 10:39:41, Mads Ager wrote:
> n -> kProbes.

Done.

http://codereview.chromium.org/2801018/diff/31022/77007#newcode154
src/ia32/stub-cache-ia32.cc:154: // equal to the name and slot n is not used
(its name is the undefined value),
On 2010/07/02 10:39:41, Mads Ager wrote:
> n -> kProbes - 1?

Done.

http://codereview.chromium.org/2801018/diff/31022/77007#newcode831
src/ia32/stub-cache-ia32.cc:831: // [object, holder).
On 2010/07/02 10:39:41, Mads Ager wrote:
> This notation does not make sense for objects. 
> 
> for each global object in the prototype chain from object to (but not
including)
> holder.
> 
> ?

Done.

http://codereview.chromium.org/2801018/diff/31022/77007#newcode858
src/ia32/stub-cache-ia32.cc:858: static void
GenerateCheckPropertyHolder(MacroAssembler* masm,
On 2010/07/02 10:39:41, Mads Ager wrote:
> I don't think this abstraction makes sense and definitely not with this name.
> Please inline again or come up with a more descriptive name.

Done.

Powered by Google App Engine
This is Rietveld 408576698