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

Issue 890663005: Introduce a flag for tracing retaining path in GC. (Closed)

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

Description

Introduce a flag for tracing retaining path in GC. The retaining path is the exactly the path visited by the marker. Since it adds run-time overhead, it is guarded by a compile flag. BUG=

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+183 lines, -4 lines) Patch
M build/features.gypi View 1 2 2 chunks +5 lines, -0 lines 0 comments Download
M src/flag-definitions.h View 1 chunk +5 lines, -0 lines 0 comments Download
M src/heap/heap.h View 3 chunks +20 lines, -0 lines 0 comments Download
M src/heap/heap.cc View 1 2 7 chunks +99 lines, -0 lines 2 comments Download
M src/heap/mark-compact.h View 4 chunks +11 lines, -0 lines 0 comments Download
M src/heap/mark-compact.cc View 1 3 chunks +16 lines, -0 lines 0 comments Download
M src/heap/objects-visiting.h View 1 2 2 chunks +12 lines, -0 lines 0 comments Download
M src/heap/objects-visiting.cc View 1 2 1 chunk +11 lines, -0 lines 0 comments Download
M src/isolate.cc View 2 chunks +4 lines, -4 lines 0 comments Download

Messages

Total messages: 3 (1 generated)
ulan
PTAL
5 years, 10 months ago (2015-02-05 16:08:41 UTC) #2
Hannes Payer (out of office)
5 years, 10 months ago (2015-02-06 13:31:32 UTC) #3
I like the idea a lot. But I am a bit worried about the code pollution.
Additionally to the gc_tracer, we would have to maintain these type of tracing
calls as well. Would it make sense to integrate some of the calls (e.g. for the
roots) in the GCTracer? That would mean we would have to add more GCTracer calls
but at least some of the calls would handle both. Not sure if this is cleaner...
WDYT?

https://codereview.chromium.org/890663005/diff/40001/src/heap/heap.cc
File src/heap/heap.cc (right):

https://codereview.chromium.org/890663005/diff/40001/src/heap/heap.cc#newcode...
src/heap/heap.cc:5610: if (mark_sweeps > 5 && WeakCell::cast(dc->get(i +
1))->value() == obj) {
make 5 a constant

https://codereview.chromium.org/890663005/diff/40001/src/heap/heap.cc#newcode...
src/heap/heap.cc:5625: 
+1 newline

Powered by Google App Engine
This is Rietveld 408576698