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

Issue 1441453002: Avoid manual object's body traversal in GC. (Closed)

Created:
5 years, 1 month ago by Igor Sheludko
Modified:
5 years, 1 month ago
CC:
v8-reviews_googlegroups.com
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

Avoid manual object's body traversal in GC. This CL introduces the following visitors: 1) RecordMigratedSlotVisitor which simplifies MarkCompactCollector::MigrateObject(). 2) IteratePointersToFromSpaceVisitor which simplifies Heap::IteratePointersToFromSpace(). 3) FindPointersToNewSpaceVisitor which simplifies StoreBuffer::IteratePointersToNewSpace(). These changes make the object's body descriptors the one and only place that knows how to traverse the object. Committed: https://crrev.com/5ba9ea1802e5f88f8b54d30161869a3e905da182 Cr-Commit-Position: refs/heads/master@{#31992}

Patch Set 1 #

Total comments: 1

Patch Set 2 : Addressing comments and rebasing #

Total comments: 6

Patch Set 3 : Addressed comments + removed HeapObject::ContentType() #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+95 lines, -311 lines) Patch
M src/heap/heap.h View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M src/heap/heap.cc View 2 chunks +29 lines, -49 lines 0 comments Download
M src/heap/mark-compact.h View 1 2 2 chunks +2 lines, -7 lines 0 comments Download
M src/heap/mark-compact.cc View 1 4 chunks +39 lines, -142 lines 0 comments Download
M src/heap/spaces.cc View 1 2 1 chunk +0 lines, -5 lines 2 comments Download
M src/heap/store-buffer.h View 1 2 1 chunk +2 lines, -1 line 0 comments Download
M src/heap/store-buffer.cc View 1 3 chunks +22 lines, -57 lines 0 comments Download
M src/objects.h View 1 2 2 chunks +0 lines, -10 lines 0 comments Download
M src/objects-inl.h View 1 2 1 chunk +0 lines, -40 lines 0 comments Download

Depends on Patchset:

Messages

Total messages: 26 (14 generated)
ulan
I like it. Please make sure that it doesn't regress GC times. You can measure ...
5 years, 1 month ago (2015-11-12 12:27:27 UTC) #4
Igor Sheludko
I addressed comments and rebased on top of a body descriptors refactoring CL. The results ...
5 years, 1 month ago (2015-11-13 10:04:23 UTC) #9
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1441453002/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1441453002/60001
5 years, 1 month ago (2015-11-13 10:07:19 UTC) #11
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years, 1 month ago (2015-11-13 10:26:42 UTC) #13
Hannes Payer (out of office)
awesome, lgtm https://codereview.chromium.org/1441453002/diff/60001/src/heap/heap.h File src/heap/heap.h (right): https://codereview.chromium.org/1441453002/diff/60001/src/heap/heap.h#newcode2366 src/heap/heap.h:2366: friend class IteratePointersToFromSpaceVisitor; alphabetic oder https://codereview.chromium.org/1441453002/diff/60001/src/heap/mark-compact.h File ...
5 years, 1 month ago (2015-11-13 17:00:37 UTC) #15
Igor Sheludko
https://codereview.chromium.org/1441453002/diff/60001/src/heap/heap.h File src/heap/heap.h (right): https://codereview.chromium.org/1441453002/diff/60001/src/heap/heap.h#newcode2366 src/heap/heap.h:2366: friend class IteratePointersToFromSpaceVisitor; On 2015/11/13 17:00:36, Hannes Payer wrote: ...
5 years, 1 month ago (2015-11-13 17:35:19 UTC) #16
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1441453002/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1441453002/80001
5 years, 1 month ago (2015-11-13 17:35:32 UTC) #18
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years, 1 month ago (2015-11-13 17:59:13 UTC) #20
Hannes Payer (out of office)
https://codereview.chromium.org/1441453002/diff/80001/src/heap/spaces.cc File src/heap/spaces.cc (left): https://codereview.chromium.org/1441453002/diff/80001/src/heap/spaces.cc#oldcode3211 src/heap/spaces.cc:3211: CHECK(object->ContentType() != HeapObjectContents::kMixedValues); On 2015/11/13 17:35:18, Igor Sheludko wrote: ...
5 years, 1 month ago (2015-11-13 18:54:38 UTC) #21
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1441453002/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1441453002/80001
5 years, 1 month ago (2015-11-13 19:10:20 UTC) #24
commit-bot: I haz the power
Committed patchset #3 (id:80001)
5 years, 1 month ago (2015-11-13 19:11:31 UTC) #25
commit-bot: I haz the power
5 years, 1 month ago (2015-11-14 23:21:54 UTC) #26
Message was sent while issue was closed.
Patchset 3 (id:??) landed as
https://crrev.com/5ba9ea1802e5f88f8b54d30161869a3e905da182
Cr-Commit-Position: refs/heads/master@{#31992}

Powered by Google App Engine
This is Rietveld 408576698