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

Issue 10448011: Keep track of which maps are associated with prototype objects (Closed)

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

Description

Keep track of which maps are associated with prototype objects so we can tune the fast-case vs. hash map heuristics accordingly. Committed: https://code.google.com/p/v8/source/detail?r=11681

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : #

Patch Set 5 : #

Total comments: 8
Unified diffs Side-by-side diffs Delta from patch set Stats (+209 lines, -23 lines) Patch
M src/objects.h View 6 chunks +15 lines, -4 lines 2 comments Download
M src/objects.cc View 8 chunks +65 lines, -12 lines 2 comments Download
M src/objects-inl.h View 1 2 3 chunks +26 lines, -3 lines 0 comments Download
M src/runtime.h View 4 1 chunk +1 line, -0 lines 0 comments Download
M src/runtime.cc View 4 1 chunk +2 lines, -0 lines 0 comments Download
M test/cctest/test-heap.cc View 1 2 3 4 2 chunks +8 lines, -4 lines 4 comments Download
A test/mjsunit/fast-prototype.js View 1 chunk +92 lines, -0 lines 0 comments Download

Messages

Total messages: 4 (0 generated)
Erik Corry
8 years, 7 months ago (2012-05-24 19:36:09 UTC) #1
Erik Corry
8 years, 7 months ago (2012-05-25 07:38:00 UTC) #2
Michael Starzinger
LGTM (if one comment and a few nits are addressed). https://chromiumcodereview.appspot.com/10448011/diff/12002/src/objects.cc File src/objects.cc (right): https://chromiumcodereview.appspot.com/10448011/diff/12002/src/objects.cc#newcode1640 ...
8 years, 6 months ago (2012-05-30 14:08:03 UTC) #3
Erik Corry
8 years, 6 months ago (2012-05-30 15:24:13 UTC) #4
https://chromiumcodereview.appspot.com/10448011/diff/12002/src/objects.cc
File src/objects.cc (right):

https://chromiumcodereview.appspot.com/10448011/diff/12002/src/objects.cc#new...
src/objects.cc:1640: object_function()->map()) {
On 2012/05/30 14:08:03, Michael Starzinger wrote:
> Indentation seems off.

Done.

https://chromiumcodereview.appspot.com/10448011/diff/12002/src/objects.h
File src/objects.h (right):

https://chromiumcodereview.appspot.com/10448011/diff/12002/src/objects.h#newc...
src/objects.h:4869: Map* GetPrototypeTransition(Object* prototype);
On 2012/05/30 14:08:03, Michael Starzinger wrote:
> I know this is not part of this CL, but can we add some comments to
> [Get/Put]PrototypeTransition() and also briefly describe the new "the-hole
> magic" you are adding?

Done.

https://chromiumcodereview.appspot.com/10448011/diff/12002/test/cctest/test-h...
File test/cctest/test-heap.cc (right):

https://chromiumcodereview.appspot.com/10448011/diff/12002/test/cctest/test-h...
test/cctest/test-heap.cc:1592: for (int i = 0; i < 10 - 3; i++) {
On 2012/05/30 14:08:03, Michael Starzinger wrote:
> The loop should also go to (11 - 3) ... better put that in a constant.

Done.

https://chromiumcodereview.appspot.com/10448011/diff/12002/test/cctest/test-h...
test/cctest/test-heap.cc:1597: CHECK(proto == trans->GetHeap()->the_hole_value()
|| proto->IsJSObject());
On 2012/05/30 14:08:03, Michael Starzinger wrote:
> Can we just use proto->IsTheHole() here, that's more readable?

Done.

Powered by Google App Engine
This is Rietveld 408576698