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

Issue 8017003: Cache multiple ElementsKind map transition per map. (Closed)

Created:
9 years, 3 months ago by danno
Modified:
9 years, 3 months ago
CC:
v8-dev
Visibility:
Public.

Description

Cache multiple ElementsKind map transition per map. R=jkummerow@chromium.org BUG=none TEST=none Committed: http://code.google.com/p/v8/source/detail?r=9417

Patch Set 1 #

Total comments: 4

Patch Set 2 : reactivate disabled code #

Patch Set 3 : fix bug #

Patch Set 4 : review feedback #

Patch Set 5 : Fix GC-related problems #

Total comments: 6

Patch Set 6 : fix nit #

Patch Set 7 : review feedback #

Unified diffs Side-by-side diffs Delta from patch set Stats (+202 lines, -68 lines) Patch
M src/mark-compact.cc View 1 2 3 4 1 chunk +11 lines, -1 line 0 comments Download
M src/objects.h View 1 2 3 4 5 6 4 chunks +2 lines, -23 lines 0 comments Download
M src/objects.cc View 1 2 3 4 5 6 6 chunks +170 lines, -36 lines 0 comments Download
M src/objects-printer.cc View 1 chunk +16 lines, -3 lines 0 comments Download
M src/property.h View 1 chunk +3 lines, -5 lines 0 comments Download

Messages

Total messages: 5 (0 generated)
danno
9 years, 3 months ago (2011-09-23 11:47:29 UTC) #1
Jakob Kummerow
LGTM http://codereview.chromium.org/8017003/diff/1/src/objects.cc File src/objects.cc (right): http://codereview.chromium.org/8017003/diff/1/src/objects.cc#newcode2081 src/objects.cc:2081: new_array->set(i, FixedArray::cast(descriptor_contents)->get(i)); Simplification: s/FixedArray::cast(descriptor_contents)/array/ http://codereview.chromium.org/8017003/diff/1/src/objects.cc#newcode2163 src/objects.cc:2163: if (!maybe_new_contents->To<Object>(&new_contents)) ...
9 years, 3 months ago (2011-09-23 12:12:28 UTC) #2
danno
Slava, can you please take a look at the GC bug fixes? Thanks. http://codereview.chromium.org/8017003/diff/1/src/objects.cc File ...
9 years, 3 months ago (2011-09-23 13:33:45 UTC) #3
Vyacheslav Egorov (Chromium)
lgtm http://codereview.chromium.org/8017003/diff/8001/src/objects.cc File src/objects.cc (right): http://codereview.chromium.org/8017003/diff/8001/src/objects.cc#newcode6509 src/objects.cc:6509: // Verify target. Can we avoid code duplication ...
9 years, 3 months ago (2011-09-23 13:49:22 UTC) #4
danno
9 years, 3 months ago (2011-09-25 09:24:27 UTC) #5
Feedback addressed, landing.

http://codereview.chromium.org/8017003/diff/8001/src/objects.cc
File src/objects.cc (right):

http://codereview.chromium.org/8017003/diff/8001/src/objects.cc#newcode6509
src/objects.cc:6509: // Verify target.
On 2011/09/23 13:49:23, Vyacheslav Egorov wrote:
> Can we avoid code duplication by moving these asserts + *RawField() = this to
> some auxiliary helper?

Done.

http://codereview.chromium.org/8017003/diff/8001/src/objects.cc#newcode6570
src/objects.cc:6570: for (int i = 0; i < array->length(); ++i) {
On 2011/09/23 13:49:23, Vyacheslav Egorov wrote:
> Probably you can discard this transition altogether when all maps are
discarded.
> (it will be picked up by the next GC).

Done.

http://codereview.chromium.org/8017003/diff/8001/src/objects.cc#newcode6579
src/objects.cc:6579: // Getter prototype() is read-only, set_prototype() has
side effects.
On 2011/09/23 13:49:23, Vyacheslav Egorov wrote:
> long line

Done.

Powered by Google App Engine
This is Rietveld 408576698