New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 802273 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: May 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , Chrome , Mac , Fuchsia
Pri: 3
Type: Bug

Blocked on:
issue 819134

Blocking:
issue 749490
issue 757440



Sign in to add a comment

Generalize object visitation for Oilpan and wrapper tracing

Project Member Reported by mlippautz@chromium.org, Jan 16 2018

Issue description

Project Member

Comment 1 by bugdroid1@chromium.org, Jan 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/83ad4f040273888c31d8ba2ec14e061c01f730c0

commit 83ad4f040273888c31d8ba2ec14e061c01f730c0
Author: Ulan Degenbaev <ulan@chromium.org>
Date: Wed Jan 17 10:22:14 2018

[bindings] Remove unused parent field in TraceWrapperV8Reference.

Bug:  802273 
Change-Id: I8e0ab42867e144b39f920171a708ffcfca0fc7cd
Reviewed-on: https://chromium-review.googlesource.com/868216
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#529691}
[modify] https://crrev.com/83ad4f040273888c31d8ba2ec14e061c01f730c0/third_party/WebKit/Source/bindings/core/v8/ScriptCustomElementDefinition.cpp
[modify] https://crrev.com/83ad4f040273888c31d8ba2ec14e061c01f730c0/third_party/WebKit/Source/bindings/core/v8/ScriptWrappableVisitorTest.cpp
[modify] https://crrev.com/83ad4f040273888c31d8ba2ec14e061c01f730c0/third_party/WebKit/Source/bindings/core/v8/V8AbstractEventListener.cpp
[modify] https://crrev.com/83ad4f040273888c31d8ba2ec14e061c01f730c0/third_party/WebKit/Source/bindings/core/v8/V8NodeFilterCondition.cpp
[modify] https://crrev.com/83ad4f040273888c31d8ba2ec14e061c01f730c0/third_party/WebKit/Source/core/dom/events/CustomEvent.cpp
[modify] https://crrev.com/83ad4f040273888c31d8ba2ec14e061c01f730c0/third_party/WebKit/Source/core/events/ErrorEvent.cpp
[modify] https://crrev.com/83ad4f040273888c31d8ba2ec14e061c01f730c0/third_party/WebKit/Source/core/events/PopStateEvent.cpp
[modify] https://crrev.com/83ad4f040273888c31d8ba2ec14e061c01f730c0/third_party/WebKit/Source/core/events/PromiseRejectionEvent.cpp
[modify] https://crrev.com/83ad4f040273888c31d8ba2ec14e061c01f730c0/third_party/WebKit/Source/core/script/ModuleScript.cpp
[modify] https://crrev.com/83ad4f040273888c31d8ba2ec14e061c01f730c0/third_party/WebKit/Source/modules/animationworklet/Animator.cpp
[modify] https://crrev.com/83ad4f040273888c31d8ba2ec14e061c01f730c0/third_party/WebKit/Source/modules/animationworklet/AnimatorDefinition.cpp
[modify] https://crrev.com/83ad4f040273888c31d8ba2ec14e061c01f730c0/third_party/WebKit/Source/modules/csspaint/CSSPaintDefinition.cpp
[modify] https://crrev.com/83ad4f040273888c31d8ba2ec14e061c01f730c0/third_party/WebKit/Source/modules/webaudio/AudioWorkletProcessorDefinition.cpp
[modify] https://crrev.com/83ad4f040273888c31d8ba2ec14e061c01f730c0/third_party/WebKit/Source/platform/bindings/CallbackFunctionBase.cpp
[modify] https://crrev.com/83ad4f040273888c31d8ba2ec14e061c01f730c0/third_party/WebKit/Source/platform/bindings/TraceWrapperV8Reference.h

Project Member

Comment 2 by bugdroid1@chromium.org, Jan 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/79b8b547392ebc0aece74878d8c3a36f7c1106ee

commit 79b8b547392ebc0aece74878d8c3a36f7c1106ee
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Wed Jan 17 11:44:51 2018

[bindings] Make TraceWrapperBase::TraceWrappers abstract

Implement an empty TraceWrappers on SW that will serve as the base
implementation.

A future CL will make sure that all children properly dispatch to
ScriptWrappable::TraceWrappers when needed, i.e., when they have their
own implementation.

This is prework for generlizing visiting of wrapper traced objects.

Bug:  chromium:802273 
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: I0957934360ba852e572c9432743bdf086fc38719
Reviewed-on: https://chromium-review.googlesource.com/870111
Reviewed-by: Yuki Shiino <yukishiino@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#529713}
[modify] https://crrev.com/79b8b547392ebc0aece74878d8c3a36f7c1106ee/third_party/WebKit/Source/core/dom/DocumentParser.h
[modify] https://crrev.com/79b8b547392ebc0aece74878d8c3a36f7c1106ee/third_party/WebKit/Source/core/imagebitmap/ImageBitmapFactories.cpp
[modify] https://crrev.com/79b8b547392ebc0aece74878d8c3a36f7c1106ee/third_party/WebKit/Source/core/imagebitmap/ImageBitmapFactories.h
[modify] https://crrev.com/79b8b547392ebc0aece74878d8c3a36f7c1106ee/third_party/WebKit/Source/core/loader/modulescript/ModuleTreeLinker.cpp
[modify] https://crrev.com/79b8b547392ebc0aece74878d8c3a36f7c1106ee/third_party/WebKit/Source/core/script/Modulator.h
[modify] https://crrev.com/79b8b547392ebc0aece74878d8c3a36f7c1106ee/third_party/WebKit/Source/core/script/PendingScript.h
[modify] https://crrev.com/79b8b547392ebc0aece74878d8c3a36f7c1106ee/third_party/WebKit/Source/modules/filesystem/LocalFileSystem.cpp
[modify] https://crrev.com/79b8b547392ebc0aece74878d8c3a36f7c1106ee/third_party/WebKit/Source/modules/filesystem/LocalFileSystem.h
[modify] https://crrev.com/79b8b547392ebc0aece74878d8c3a36f7c1106ee/third_party/WebKit/Source/modules/indexeddb/IndexedDBClient.cpp
[modify] https://crrev.com/79b8b547392ebc0aece74878d8c3a36f7c1106ee/third_party/WebKit/Source/modules/indexeddb/IndexedDBClient.h
[modify] https://crrev.com/79b8b547392ebc0aece74878d8c3a36f7c1106ee/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerContainerClient.h
[modify] https://crrev.com/79b8b547392ebc0aece74878d8c3a36f7c1106ee/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.h
[modify] https://crrev.com/79b8b547392ebc0aece74878d8c3a36f7c1106ee/third_party/WebKit/Source/platform/bindings/ScriptWrappable.h
[modify] https://crrev.com/79b8b547392ebc0aece74878d8c3a36f7c1106ee/third_party/WebKit/Source/platform/bindings/TraceWrapperBase.h

Project Member

Comment 3 by bugdroid1@chromium.org, Jan 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/07c9c2c2036f8be61920b5ae78c6353cbc8a4511

commit 07c9c2c2036f8be61920b5ae78c6353cbc8a4511
Author: Ulan Degenbaev <ulan@chromium.org>
Date: Wed Jan 17 12:04:21 2018

[bindings] Convert main_world_wrapper_ to TraceWrapperV8Reference.

This makes the main_world_wrapper_ field of ScriptWrappable consistent
with other traced fields that refer to V8 objects.

Bug:  802273 
Change-Id: If7ed22def0423c28f19709541b7690a58ea4eff2
Reviewed-on: https://chromium-review.googlesource.com/868692
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Yuki Shiino <yukishiino@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#529717}
[modify] https://crrev.com/07c9c2c2036f8be61920b5ae78c6353cbc8a4511/third_party/WebKit/Source/platform/bindings/ScriptWrappable.cpp
[modify] https://crrev.com/07c9c2c2036f8be61920b5ae78c6353cbc8a4511/third_party/WebKit/Source/platform/bindings/ScriptWrappable.h
[modify] https://crrev.com/07c9c2c2036f8be61920b5ae78c6353cbc8a4511/third_party/WebKit/Source/platform/bindings/TraceWrapperV8Reference.h

Project Member

Comment 4 by bugdroid1@chromium.org, Jan 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/47b8c9341b89cc4222836a9ac27dcf962e1ba990

commit 47b8c9341b89cc4222836a9ac27dcf962e1ba990
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Wed Jan 17 14:30:48 2018

[blink-gc-plugin] Add checks for dispatching TraceWrappers

Check for properly dispatching to base classes in TraceWrappers

Bug:  chromium:802273 
Change-Id: I35c39afd62972715c3d7867ce5abbb70753e239b
Reviewed-on: https://chromium-review.googlesource.com/868138
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Keishi Hattori <keishi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#529735}
[modify] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/BlinkGCPlugin.cpp
[modify] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/BlinkGCPluginConsumer.cpp
[modify] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/BlinkGCPluginConsumer.h
[modify] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/BlinkGCPluginOptions.h
[modify] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/CMakeLists.txt
[add] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/CheckTraceWrappersVisitor.cpp
[add] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/CheckTraceWrappersVisitor.h
[modify] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/CollectVisitor.cpp
[modify] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/CollectVisitor.h
[modify] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/Config.cpp
[modify] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/Config.h
[modify] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/DiagnosticsReporter.cpp
[modify] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/DiagnosticsReporter.h
[modify] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/RecordInfo.cpp
[modify] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/RecordInfo.h
[add] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/tests/class_trace_wrappers_bases.cpp
[add] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/tests/class_trace_wrappers_bases.flags
[add] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/tests/class_trace_wrappers_bases.h
[add] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/tests/class_trace_wrappers_bases.txt
[modify] https://crrev.com/47b8c9341b89cc4222836a9ac27dcf962e1ba990/tools/clang/blink_gc_plugin/tests/heap/stubs.h

Project Member

Comment 5 by bugdroid1@chromium.org, Jan 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a81626b52ab8ec488c596758faea4fd66f1bcb1f

commit a81626b52ab8ec488c596758faea4fd66f1bcb1f
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Wed Jan 17 16:18:16 2018

[bindings] Fix dispatching TraceWrappers to parent classes

Found using a local build of
  https://chromium-review.googlesource.com/c/chromium/src/+/868138

Bug:  chromium:802273 
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: Iff945b362b2984ec88fd7d98689cdba67d383530
Reviewed-on: https://chromium-review.googlesource.com/870120
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#529762}
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/bindings/core/v8/ScriptCustomElementDefinition.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/bindings/core/v8/V8AbstractEventListener.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/clipboard/DataTransferItem.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/css/CSSRule.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/dom/Document.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/dom/MutationObserver.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/dom/NodeIterator.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/dom/TreeWalker.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/events/PromiseRejectionEvent.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/html/custom/CustomElementRegistry.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/html/media/HTMLMediaElement.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/html/parser/HTMLDocumentParser.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/html/track/TextTrack.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/html/track/TextTrackCueList.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/intersection_observer/IntersectionObserver.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/mojo/MojoWatcher.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/resize_observer/ResizeObserver.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/script/ModulatorImplBase.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/svg/SVGMatrixTearOff.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/svg/properties/SVGPropertyTearOff.h
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/testing/DeathAwareScriptWrappable.h
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/timing/PerformanceObserver.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/core/workers/WorkerOrWorkletGlobalScope.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/modules/geolocation/NavigatorGeolocation.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/modules/locks/LockManager.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/modules/mediasession/MediaSession.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/modules/nfc/NFC.cpp
[modify] https://crrev.com/a81626b52ab8ec488c596758faea4fd66f1bcb1f/third_party/WebKit/Source/modules/xr/XRSession.cpp

Project Member

Comment 6 by bugdroid1@chromium.org, Jan 18 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5b9dda086f42b31f9c6b1b1d37e22c9a393d99e5

commit 5b9dda086f42b31f9c6b1b1d37e22c9a393d99e5
Author: Ulan Degenbaev <ulan@chromium.org>
Date: Thu Jan 18 12:36:12 2018

[bindings] Clean up handling of V8 references in ScriptWrappableVisitor.

Changes in this patch:
1) Remove v8::PersistentBase<v8::Value> versions of the methods.
   Only TraceWrapperV8Reference versions should be used.
2) Remove ScriptWrappableVisitor::MarkWrapper.
3) Remove virtual version of ScriptWrappableVisitor::TraceWrappers.
4) Introduce ScriptWrappableVisitor::Visit(TraceWrapperV8Reference)
   that can be overriden by derived classes.

This separates the entry point of the visitor (TraceWrappers) from
the actual visitation logic (Visit).

Bug:  802273 
Change-Id: I451373a8f0b02f31eec06a756c80eae7c0f4acd8
Reviewed-on: https://chromium-review.googlesource.com/870118
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#530125}
[modify] https://crrev.com/5b9dda086f42b31f9c6b1b1d37e22c9a393d99e5/third_party/WebKit/Source/bindings/core/v8/ScriptWrappableVisitorTest.cpp
[modify] https://crrev.com/5b9dda086f42b31f9c6b1b1d37e22c9a393d99e5/third_party/WebKit/Source/bindings/core/v8/V8GCController.cpp
[modify] https://crrev.com/5b9dda086f42b31f9c6b1b1d37e22c9a393d99e5/third_party/WebKit/Source/platform/bindings/ScriptWrappable.cpp
[modify] https://crrev.com/5b9dda086f42b31f9c6b1b1d37e22c9a393d99e5/third_party/WebKit/Source/platform/bindings/ScriptWrappable.h
[modify] https://crrev.com/5b9dda086f42b31f9c6b1b1d37e22c9a393d99e5/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitor.cpp
[modify] https://crrev.com/5b9dda086f42b31f9c6b1b1d37e22c9a393d99e5/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitor.h
[modify] https://crrev.com/5b9dda086f42b31f9c6b1b1d37e22c9a393d99e5/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitorVerifier.h

Project Member

Comment 7 by bugdroid1@chromium.org, Jan 18 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8f678e5409a65d3af47685ec0760e7d242b41bcf

commit 8f678e5409a65d3af47685ec0760e7d242b41bcf
Author: Ulan Degenbaev <ulan@chromium.org>
Date: Thu Jan 18 13:59:44 2018

[bindings] Generalize visitation of ScriptWrappables.

Now ScriptWrappableVisitor::TraceWrappers* methods forward
to a virtual ScriptWrappableVisitor::Visit method that can be
customized by derived visitor classes.
The new Visit method replaces the old MarkAndTraceWrappers.

This patch also removes:
- virtual PushToMarkingDeque,
- MarkAndPushToMarkingDeque,
- TraceTrait<T>::MarkWrapperNoTracing.
The MarkWrapperHeader is now a non-virtual private method.

This patch removes one virtual call in handling of white objects
and adds one virtual call in handling of black objects.

Bug:  802273 
Change-Id: I8ae1a607ae4bcee3e5a8591705495dcbbbb9b085
Reviewed-on: https://chromium-review.googlesource.com/870783
Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#530134}
[modify] https://crrev.com/8f678e5409a65d3af47685ec0760e7d242b41bcf/third_party/WebKit/Source/bindings/core/v8/ScriptWrappableVisitorTest.cpp
[modify] https://crrev.com/8f678e5409a65d3af47685ec0760e7d242b41bcf/third_party/WebKit/Source/bindings/core/v8/V8GCController.cpp
[modify] https://crrev.com/8f678e5409a65d3af47685ec0760e7d242b41bcf/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitor.cpp
[modify] https://crrev.com/8f678e5409a65d3af47685ec0760e7d242b41bcf/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitor.h
[modify] https://crrev.com/8f678e5409a65d3af47685ec0760e7d242b41bcf/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitorVerifier.h
[modify] https://crrev.com/8f678e5409a65d3af47685ec0760e7d242b41bcf/third_party/WebKit/Source/platform/heap/TraceTraits.h

Project Member

Comment 8 by bugdroid1@chromium.org, Jan 21 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b21b5245f2203639fa57e9bcde692ddada846f69

commit b21b5245f2203639fa57e9bcde692ddada846f69
Author: Ulan Degenbaev <ulan@chromium.org>
Date: Sun Jan 21 04:50:32 2018

[bindings] Implement ScriptWrappable::TraceWrappers.

The function traces wrapper objects corresponding to the
ScriptWrappable in all worlds. This allows us to remove
ad-hoc MarkWrappersInAllWorlds and simplify DispatchTraceWrappers.

Now wrappers in non-main world are properly reported to the visitor.
So the derived visitors (verifier, heap-snapshot generator) can see
and handle these wrappers.

Bug:  802273 
Change-Id: Ie5aef1de7f0dcffe3a71304e0a37686d2bc859d3
Reviewed-on: https://chromium-review.googlesource.com/874190
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#530771}
[modify] https://crrev.com/b21b5245f2203639fa57e9bcde692ddada846f69/third_party/WebKit/Source/bindings/core/v8/V8GCController.cpp
[modify] https://crrev.com/b21b5245f2203639fa57e9bcde692ddada846f69/third_party/WebKit/Source/platform/bindings/DOMDataStore.h
[modify] https://crrev.com/b21b5245f2203639fa57e9bcde692ddada846f69/third_party/WebKit/Source/platform/bindings/DOMWrapperMap.h
[modify] https://crrev.com/b21b5245f2203639fa57e9bcde692ddada846f69/third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.cpp
[modify] https://crrev.com/b21b5245f2203639fa57e9bcde692ddada846f69/third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.h
[modify] https://crrev.com/b21b5245f2203639fa57e9bcde692ddada846f69/third_party/WebKit/Source/platform/bindings/ScriptWrappable.cpp
[modify] https://crrev.com/b21b5245f2203639fa57e9bcde692ddada846f69/third_party/WebKit/Source/platform/bindings/ScriptWrappable.h
[modify] https://crrev.com/b21b5245f2203639fa57e9bcde692ddada846f69/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitor.cpp
[modify] https://crrev.com/b21b5245f2203639fa57e9bcde692ddada846f69/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitor.h
[modify] https://crrev.com/b21b5245f2203639fa57e9bcde692ddada846f69/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitorVerifier.h
[modify] https://crrev.com/b21b5245f2203639fa57e9bcde692ddada846f69/third_party/WebKit/Source/platform/heap/TraceTraits.h

Project Member

Comment 9 by bugdroid1@chromium.org, Jan 22 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2cbbadaf1522cec4398eb86925c82efa95ab85e8

commit 2cbbadaf1522cec4398eb86925c82efa95ab85e8
Author: Ulan Degenbaev <ulan@chromium.org>
Date: Mon Jan 22 16:50:31 2018

[bindings] Extract abstract ScriptWrappableVisitor interface.

This patch renames the old ScriptWrappableVisitor into ScriptWrappableMarkingVisitor
and extracts the abstract interface into the new base class.

This pure refactoring without any behavior change.

Bug:  802273 

Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: Ie1d27113d2793ab6a642ae056b177980e0d2ef0a
Reviewed-on: https://chromium-review.googlesource.com/877887
Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#530886}
[modify] https://crrev.com/2cbbadaf1522cec4398eb86925c82efa95ab85e8/third_party/WebKit/Source/bindings/core/v8/ScriptWrappableVisitorTest.cpp
[modify] https://crrev.com/2cbbadaf1522cec4398eb86925c82efa95ab85e8/third_party/WebKit/Source/bindings/core/v8/V8GCController.cpp
[modify] https://crrev.com/2cbbadaf1522cec4398eb86925c82efa95ab85e8/third_party/WebKit/Source/bindings/core/v8/V8Initializer.cpp
[modify] https://crrev.com/2cbbadaf1522cec4398eb86925c82efa95ab85e8/third_party/WebKit/Source/core/css/CSSRule.cpp
[modify] https://crrev.com/2cbbadaf1522cec4398eb86925c82efa95ab85e8/third_party/WebKit/Source/core/dom/Document.cpp
[modify] https://crrev.com/2cbbadaf1522cec4398eb86925c82efa95ab85e8/third_party/WebKit/Source/core/dom/Node.cpp
[modify] https://crrev.com/2cbbadaf1522cec4398eb86925c82efa95ab85e8/third_party/WebKit/Source/core/svg/properties/SVGPropertyTearOff.h
[modify] https://crrev.com/2cbbadaf1522cec4398eb86925c82efa95ab85e8/third_party/WebKit/Source/core/workers/WorkerBackingThread.cpp
[modify] https://crrev.com/2cbbadaf1522cec4398eb86925c82efa95ab85e8/third_party/WebKit/Source/platform/bindings/ActiveScriptWrappableBase.cpp
[modify] https://crrev.com/2cbbadaf1522cec4398eb86925c82efa95ab85e8/third_party/WebKit/Source/platform/bindings/ActiveScriptWrappableBase.h
[modify] https://crrev.com/2cbbadaf1522cec4398eb86925c82efa95ab85e8/third_party/WebKit/Source/platform/bindings/DOMDataStore.h
[modify] https://crrev.com/2cbbadaf1522cec4398eb86925c82efa95ab85e8/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitor.cpp
[modify] https://crrev.com/2cbbadaf1522cec4398eb86925c82efa95ab85e8/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitor.h
[modify] https://crrev.com/2cbbadaf1522cec4398eb86925c82efa95ab85e8/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitorVerifier.h
[modify] https://crrev.com/2cbbadaf1522cec4398eb86925c82efa95ab85e8/third_party/WebKit/Source/platform/bindings/TraceWrapperMember.h
[modify] https://crrev.com/2cbbadaf1522cec4398eb86925c82efa95ab85e8/third_party/WebKit/Source/platform/bindings/TraceWrapperV8Reference.h
[modify] https://crrev.com/2cbbadaf1522cec4398eb86925c82efa95ab85e8/third_party/WebKit/Source/platform/bindings/V8DOMWrapper.h
[modify] https://crrev.com/2cbbadaf1522cec4398eb86925c82efa95ab85e8/third_party/WebKit/Source/platform/bindings/V8PerIsolateData.cpp
[modify] https://crrev.com/2cbbadaf1522cec4398eb86925c82efa95ab85e8/third_party/WebKit/Source/platform/bindings/V8PerIsolateData.h

Project Member

Comment 10 by bugdroid1@chromium.org, Jan 22 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b154b7ff38de9076a55a7cb5fc7571ce39ee78ef

commit b154b7ff38de9076a55a7cb5fc7571ce39ee78ef
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Mon Jan 22 17:18:10 2018

[blink-gc-plugin] Add gn flags to WebKit

Note: Requires a locally-built plugin for now.

See
  https://chromium.googlesource.com/chromium/src/+/master/docs/clang.md#Using-plugins

Bug:  chromium:802273 
Change-Id: I0c92d5c6db1a4a2511446185e5d5de0003abd8af
Reviewed-on: https://chromium-review.googlesource.com/874351
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#530900}
[modify] https://crrev.com/b154b7ff38de9076a55a7cb5fc7571ce39ee78ef/third_party/WebKit/Source/BUILD.gn

Project Member

Comment 11 by bugdroid1@chromium.org, Jan 23 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/85353fb37af561530c775af46f9a8a4b679b9487

commit 85353fb37af561530c775af46f9a8a4b679b9487
Author: Ulan Degenbaev <ulan@chromium.org>
Date: Tue Jan 23 08:14:29 2018

[bindings] Move ScriptWrappableMarkingVisitor into separate file.

This patch moves code between files without changing code.

Bug:  802273 
Change-Id: I7b26ded82cb56611a5593edce88b42d14dc1a8e0
Reviewed-on: https://chromium-review.googlesource.com/879201
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#531179}
[modify] https://crrev.com/85353fb37af561530c775af46f9a8a4b679b9487/third_party/WebKit/Source/bindings/bindings.gni
[rename] https://crrev.com/85353fb37af561530c775af46f9a8a4b679b9487/third_party/WebKit/Source/bindings/core/v8/ScriptWrappableMarkingVisitorTest.cpp
[modify] https://crrev.com/85353fb37af561530c775af46f9a8a4b679b9487/third_party/WebKit/Source/bindings/core/v8/V8GCController.cpp
[modify] https://crrev.com/85353fb37af561530c775af46f9a8a4b679b9487/third_party/WebKit/Source/bindings/core/v8/V8Initializer.cpp
[modify] https://crrev.com/85353fb37af561530c775af46f9a8a4b679b9487/third_party/WebKit/Source/platform/BUILD.gn
[modify] https://crrev.com/85353fb37af561530c775af46f9a8a4b679b9487/third_party/WebKit/Source/platform/bindings/ActiveScriptWrappableBase.cpp
[modify] https://crrev.com/85353fb37af561530c775af46f9a8a4b679b9487/third_party/WebKit/Source/platform/bindings/DOMDataStore.h
[modify] https://crrev.com/85353fb37af561530c775af46f9a8a4b679b9487/third_party/WebKit/Source/platform/bindings/ScopedPersistent.h
[add] https://crrev.com/85353fb37af561530c775af46f9a8a4b679b9487/third_party/WebKit/Source/platform/bindings/ScriptWrappableMarkingVisitor.cpp
[add] https://crrev.com/85353fb37af561530c775af46f9a8a4b679b9487/third_party/WebKit/Source/platform/bindings/ScriptWrappableMarkingVisitor.h
[modify] https://crrev.com/85353fb37af561530c775af46f9a8a4b679b9487/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitor.cpp
[modify] https://crrev.com/85353fb37af561530c775af46f9a8a4b679b9487/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitor.h
[modify] https://crrev.com/85353fb37af561530c775af46f9a8a4b679b9487/third_party/WebKit/Source/platform/bindings/TraceWrapperMember.h
[modify] https://crrev.com/85353fb37af561530c775af46f9a8a4b679b9487/third_party/WebKit/Source/platform/bindings/TraceWrapperV8Reference.h
[modify] https://crrev.com/85353fb37af561530c775af46f9a8a4b679b9487/third_party/WebKit/Source/platform/bindings/V8PerIsolateData.h

Project Member

Comment 12 by bugdroid1@chromium.org, Jan 23 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b2c5a55fc1dbf103e15401ef905c60bab242f922

commit b2c5a55fc1dbf103e15401ef905c60bab242f922
Author: Ulan Degenbaev <ulan@chromium.org>
Date: Tue Jan 23 10:44:54 2018

[bindings] Move WrapperMarkingData into ScriptWrappableMarkingVisitor.

This patch renames WrapperMarkingData to MarkingDequeItem and makes it
a private nested class of ScriptWrappableMarkingVisitor.

Other classes can no longer refer to WrapperMarkingData.

Bug:  802273 
Change-Id: Ic6f826dc78fd29554cfcad3c95c3adaa73854ebd
Reviewed-on: https://chromium-review.googlesource.com/880701
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#531202}
[modify] https://crrev.com/b2c5a55fc1dbf103e15401ef905c60bab242f922/third_party/WebKit/Source/bindings/core/v8/ScriptWrappableMarkingVisitorTest.cpp
[modify] https://crrev.com/b2c5a55fc1dbf103e15401ef905c60bab242f922/third_party/WebKit/Source/platform/bindings/ScriptWrappableMarkingVisitor.cpp
[modify] https://crrev.com/b2c5a55fc1dbf103e15401ef905c60bab242f922/third_party/WebKit/Source/platform/bindings/ScriptWrappableMarkingVisitor.h
[modify] https://crrev.com/b2c5a55fc1dbf103e15401ef905c60bab242f922/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitorVerifier.h

Project Member

Comment 13 by bugdroid1@chromium.org, Jan 23 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/bf779fc562b95cc6a65b3f5a045f2777f97232af

commit bf779fc562b95cc6a65b3f5a045f2777f97232af
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Tue Jan 23 10:58:20 2018

[oilpan] Extract visitor from marker

- Create visitor interface that allows for just tracing using a descriptor
- Maintains fast marker version by also adding the marking callback

Bug:  chromium:802273 
Change-Id: Ib25a4c3e85818016b4788a1c8246488ce13dbc4a
Reviewed-on: https://chromium-review.googlesource.com/879142
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#531203}
[modify] https://crrev.com/bf779fc562b95cc6a65b3f5a045f2777f97232af/third_party/WebKit/Source/core/dom/LiveNodeListBase.h
[modify] https://crrev.com/bf779fc562b95cc6a65b3f5a045f2777f97232af/third_party/WebKit/Source/platform/heap/HeapTest.cpp
[modify] https://crrev.com/bf779fc562b95cc6a65b3f5a045f2777f97232af/third_party/WebKit/Source/platform/heap/TraceTraits.h
[modify] https://crrev.com/bf779fc562b95cc6a65b3f5a045f2777f97232af/third_party/WebKit/Source/platform/heap/Visitor.h

Project Member

Comment 14 by bugdroid1@chromium.org, Jan 23 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/029f1f608aaa546a4044775ba5a35db2a6d12364

commit 029f1f608aaa546a4044775ba5a35db2a6d12364
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Tue Jan 23 14:58:15 2018

Revert "[oilpan] Extract visitor from marker"

This reverts commit bf779fc562b95cc6a65b3f5a045f2777f97232af.

Reason for revert: Failing eager tracing test on MSAN: https://build.chromium.org/p/chromium.memory/builders/Linux%20MSan%20Tests

Original change's description:
> [oilpan] Extract visitor from marker
> 
> - Create visitor interface that allows for just tracing using a descriptor
> - Maintains fast marker version by also adding the marking callback
> 
> Bug:  chromium:802273 
> Change-Id: Ib25a4c3e85818016b4788a1c8246488ce13dbc4a
> Reviewed-on: https://chromium-review.googlesource.com/879142
> Reviewed-by: Kentaro Hara <haraken@chromium.org>
> Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#531203}

TBR=haraken@chromium.org,hpayer@chromium.org,mlippautz@chromium.org

Change-Id: I828b92cf0bc6cc0cfd77be484bf7a00c3acde396
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  chromium:802273 
Reviewed-on: https://chromium-review.googlesource.com/880904
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#531235}
[modify] https://crrev.com/029f1f608aaa546a4044775ba5a35db2a6d12364/third_party/WebKit/Source/core/dom/LiveNodeListBase.h
[modify] https://crrev.com/029f1f608aaa546a4044775ba5a35db2a6d12364/third_party/WebKit/Source/platform/heap/HeapTest.cpp
[modify] https://crrev.com/029f1f608aaa546a4044775ba5a35db2a6d12364/third_party/WebKit/Source/platform/heap/TraceTraits.h
[modify] https://crrev.com/029f1f608aaa546a4044775ba5a35db2a6d12364/third_party/WebKit/Source/platform/heap/Visitor.h

Project Member

Comment 15 by bugdroid1@chromium.org, Jan 23 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9fb3426a58abc53f67fe04bc8e327956ff93d627

commit 9fb3426a58abc53f67fe04bc8e327956ff93d627
Author: Ulan Degenbaev <ulan@chromium.org>
Date: Tue Jan 23 15:03:06 2018

[bindings] Properly invoke visitor in TraceActiveScriptWrappables.

Currently TraceActiveScriptWrappables bypasses the visitor and directly
registers a V8 reference in the marking visitor.

It should just invoke visitor to notify it about the script-wrappable
object. This way other visitors can also handle the object.

Bug:  802273 
Change-Id: I7993f293fb9a5dd972bc029ca525a6e6986d6328
Reviewed-on: https://chromium-review.googlesource.com/880941
Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#531237}
[modify] https://crrev.com/9fb3426a58abc53f67fe04bc8e327956ff93d627/third_party/WebKit/Source/platform/bindings/ActiveScriptWrappableBase.cpp
[modify] https://crrev.com/9fb3426a58abc53f67fe04bc8e327956ff93d627/third_party/WebKit/Source/platform/bindings/ActiveScriptWrappableBase.h

Project Member

Comment 17 by bugdroid1@chromium.org, Jan 30 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/174cc9f518d1ec65c38d8d69827a818d49bd6d3e

commit 174cc9f518d1ec65c38d8d69827a818d49bd6d3e
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Tue Jan 30 07:56:30 2018

[oilpan] Explicitly trace out-of-line vector backings

- Avoid tracing elements directly from WTF::Vector and WTF::Deque
  when the backing store is allocated out-of-line.
- Avoid MarkNoTrace optimization breaking the tracing/marking
  abstraction.

Bug:  chromium:802273 
Change-Id: Icfb5deed3479d4a7dec85c82930b464bdfe16b0e
Reviewed-on: https://chromium-review.googlesource.com/886484
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#532806}
[modify] https://crrev.com/174cc9f518d1ec65c38d8d69827a818d49bd6d3e/third_party/WebKit/Source/platform/bindings/TraceWrapperMember.h
[modify] https://crrev.com/174cc9f518d1ec65c38d8d69827a818d49bd6d3e/third_party/WebKit/Source/platform/heap/HeapAllocator.h
[modify] https://crrev.com/174cc9f518d1ec65c38d8d69827a818d49bd6d3e/third_party/WebKit/Source/platform/wtf/Deque.h
[modify] https://crrev.com/174cc9f518d1ec65c38d8d69827a818d49bd6d3e/third_party/WebKit/Source/platform/wtf/Vector.h

Project Member

Comment 18 by bugdroid1@chromium.org, Feb 2 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9d5eb0ba33d9cd882bc71e8f6078b6ebf4b876f2

commit 9d5eb0ba33d9cd882bc71e8f6078b6ebf4b876f2
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Fri Feb 02 13:03:09 2018

[oilpan] Merge weakness flags in tracing logic

Remove WTF::ShouldWeakPointersBeMarkedStrongly as all use cases can
be expressed by using WTF::WeakHandlingFlag.

The cases after this refactoring are:
1. Trace:
   - Strongly trace and zero out weak members
2. Trait::kWeakHandlingFlag == kNoWeakHandling:
   - Deferring to Trace.
3. Trait::kWeakHandlingFlag == kWeakHandling with explicit kWeakHandling:
   - TraceInCollection with kWeakHandling
4. Trait::kWeakHandlingFlag == kWeakHandling with explicit kNoWeakHandling:
   - TraceInCollection with kNoWeakHandling

Note that 2. is part of 4. on implementation level.

Bug:  chromium:802273 
Change-Id: I50d69bed9e65edf9ea592c8f0372f0842ed44c16
Reviewed-on: https://chromium-review.googlesource.com/897628
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#534034}
[modify] https://crrev.com/9d5eb0ba33d9cd882bc71e8f6078b6ebf4b876f2/third_party/WebKit/Source/core/css/resolver/MatchedPropertiesCache.h
[modify] https://crrev.com/9d5eb0ba33d9cd882bc71e8f6078b6ebf4b876f2/third_party/WebKit/Source/platform/heap/HeapAllocator.h
[modify] https://crrev.com/9d5eb0ba33d9cd882bc71e8f6078b6ebf4b876f2/third_party/WebKit/Source/platform/heap/HeapTest.cpp
[modify] https://crrev.com/9d5eb0ba33d9cd882bc71e8f6078b6ebf4b876f2/third_party/WebKit/Source/platform/heap/TraceTraits.h
[modify] https://crrev.com/9d5eb0ba33d9cd882bc71e8f6078b6ebf4b876f2/third_party/WebKit/Source/platform/wtf/HashTable.h
[modify] https://crrev.com/9d5eb0ba33d9cd882bc71e8f6078b6ebf4b876f2/third_party/WebKit/Source/platform/wtf/HashTraits.h
[modify] https://crrev.com/9d5eb0ba33d9cd882bc71e8f6078b6ebf4b876f2/third_party/WebKit/Source/platform/wtf/ListHashSet.h
[modify] https://crrev.com/9d5eb0ba33d9cd882bc71e8f6078b6ebf4b876f2/third_party/WebKit/Source/platform/wtf/TypeTraits.h
[modify] https://crrev.com/9d5eb0ba33d9cd882bc71e8f6078b6ebf4b876f2/third_party/WebKit/Source/platform/wtf/VectorTraits.h

Project Member

Comment 19 by bugdroid1@chromium.org, Feb 7 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5252152ed10bd12bfe8544859e5bae1708906a19

commit 5252152ed10bd12bfe8544859e5bae1708906a19
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Wed Feb 07 17:43:15 2018

[blink-gc-plugin] Compile-time fixes

Suggested fixes from
  https://chromium-review.googlesource.com/c/chromium/src/+/868138

Bug:  chromium:802273 
Change-Id: I2b6052dc67533c5a05799d535c816f4b00bc255a
Reviewed-on: https://chromium-review.googlesource.com/907128
Reviewed-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#535044}
[modify] https://crrev.com/5252152ed10bd12bfe8544859e5bae1708906a19/tools/clang/blink_gc_plugin/Config.cpp

Project Member

Comment 20 by bugdroid1@chromium.org, Feb 15 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e10bedf4e4a546a7ecc265c2b232d6f51c840b98

commit e10bedf4e4a546a7ecc265c2b232d6f51c840b98
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Thu Feb 15 14:00:18 2018

[oilpan] Introduce TraceInCollectionTrait::IsAlive

Introduce a stateless method that checks whether an object is alive for handling
during weak processing. This allows us to remove the guards that check for mark
bits in case we want strong tracing.

Bug:  chromium:802273 
Change-Id: Idf177b568ed9de8bd5542dc3c71c28156c95a170
Reviewed-on: https://chromium-review.googlesource.com/895459
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#537006}
[modify] https://crrev.com/e10bedf4e4a546a7ecc265c2b232d6f51c840b98/third_party/WebKit/Source/core/css/resolver/MatchedPropertiesCache.h
[modify] https://crrev.com/e10bedf4e4a546a7ecc265c2b232d6f51c840b98/third_party/WebKit/Source/platform/heap/HeapAllocator.h
[modify] https://crrev.com/e10bedf4e4a546a7ecc265c2b232d6f51c840b98/third_party/WebKit/Source/platform/heap/HeapTest.cpp
[modify] https://crrev.com/e10bedf4e4a546a7ecc265c2b232d6f51c840b98/third_party/WebKit/Source/platform/heap/TraceTraits.h
[modify] https://crrev.com/e10bedf4e4a546a7ecc265c2b232d6f51c840b98/third_party/WebKit/Source/platform/wtf/HashTable.h

Labels: OS-Android OS-Chrome OS-Fuchsia OS-Linux OS-Mac OS-Windows
Project Member

Comment 22 by bugdroid1@chromium.org, Feb 19 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/84c908509c62dbe85b538a988994ba1a8880ce98

commit 84c908509c62dbe85b538a988994ba1a8880ce98
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Mon Feb 19 08:59:03 2018

[oilpan] HashTable: Avoid marking in Trace call

Trace calls should just dispatch and register at the visitors. This is
in preparation to override visitation behavior.

Bug:  chromium:802273 
Change-Id: I0d7d6f95a7adcf121123316af7cb5b837c9e262f
Reviewed-on: https://chromium-review.googlesource.com/923731
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#537603}
[modify] https://crrev.com/84c908509c62dbe85b538a988994ba1a8880ce98/third_party/WebKit/Source/platform/heap/HeapAllocator.h
[modify] https://crrev.com/84c908509c62dbe85b538a988994ba1a8880ce98/third_party/WebKit/Source/platform/wtf/HashTable.h

Project Member

Comment 23 by bugdroid1@chromium.org, Feb 21 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3570f9a412a65844ddb42e4069542fe9435e94d7

commit 3570f9a412a65844ddb42e4069542fe9435e94d7
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Wed Feb 21 19:06:43 2018

[oilpan] Separate marking from visitation

Separate marking into MarkingVisitor and keep only actual visitation
logic in Visitor.

Bug:  chromium:802273 
Change-Id: Iad21d88e30c9313371a7c5868533cac3050fb3a0
Reviewed-on: https://chromium-review.googlesource.com/925662
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#538177}
[modify] https://crrev.com/3570f9a412a65844ddb42e4069542fe9435e94d7/third_party/WebKit/Source/platform/heap/BlinkGC.h
[modify] https://crrev.com/3570f9a412a65844ddb42e4069542fe9435e94d7/third_party/WebKit/Source/platform/heap/GarbageCollected.h
[modify] https://crrev.com/3570f9a412a65844ddb42e4069542fe9435e94d7/third_party/WebKit/Source/platform/heap/Heap.cpp
[modify] https://crrev.com/3570f9a412a65844ddb42e4069542fe9435e94d7/third_party/WebKit/Source/platform/heap/Heap.h
[modify] https://crrev.com/3570f9a412a65844ddb42e4069542fe9435e94d7/third_party/WebKit/Source/platform/heap/HeapPage.cpp
[modify] https://crrev.com/3570f9a412a65844ddb42e4069542fe9435e94d7/third_party/WebKit/Source/platform/heap/HeapPage.h
[modify] https://crrev.com/3570f9a412a65844ddb42e4069542fe9435e94d7/third_party/WebKit/Source/platform/heap/HeapTest.cpp
[modify] https://crrev.com/3570f9a412a65844ddb42e4069542fe9435e94d7/third_party/WebKit/Source/platform/heap/ThreadState.cpp
[modify] https://crrev.com/3570f9a412a65844ddb42e4069542fe9435e94d7/third_party/WebKit/Source/platform/heap/ThreadState.h
[modify] https://crrev.com/3570f9a412a65844ddb42e4069542fe9435e94d7/third_party/WebKit/Source/platform/heap/TraceTraits.h
[modify] https://crrev.com/3570f9a412a65844ddb42e4069542fe9435e94d7/third_party/WebKit/Source/platform/heap/Visitor.cpp
[modify] https://crrev.com/3570f9a412a65844ddb42e4069542fe9435e94d7/third_party/WebKit/Source/platform/heap/Visitor.h
[modify] https://crrev.com/3570f9a412a65844ddb42e4069542fe9435e94d7/third_party/WebKit/Source/platform/heap/VisitorImpl.h

Project Member

Comment 24 by bugdroid1@chromium.org, Feb 22 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b100fd5e521b61aa9809e00e16f8b78612c903dd

commit b100fd5e521b61aa9809e00e16f8b78612c903dd
Author: Keishi Hattori <keishi@chromium.org>
Date: Thu Feb 22 10:41:47 2018

Oilpan: Fix IncrementalMarkingTest build after r538177

Bug:  802273 
Change-Id: I65dda5a64191f7ea78fabc6a524a68627b0553b3
Reviewed-on: https://chromium-review.googlesource.com/931021
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Keishi Hattori <keishi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#538393}
[modify] https://crrev.com/b100fd5e521b61aa9809e00e16f8b78612c903dd/third_party/WebKit/Source/platform/heap/IncrementalMarkingTest.cpp

Project Member

Comment 25 by bugdroid1@chromium.org, Feb 22 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/03d84b4b220cc3569a11ca0f1db2e8ca18f6fa5c

commit 03d84b4b220cc3569a11ca0f1db2e8ca18f6fa5c
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Thu Feb 22 19:02:28 2018

[oilpan] Move MarkingVisitor to its own file

Move MarkingVisitor to its own file untangling the dependencies that
required keeping a VisitorImpl.h file.

Bug:  chromium:802273 
Change-Id: I1cf43d028add224f211983477b8f3e098d0a1808
Reviewed-on: https://chromium-review.googlesource.com/931552
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#538506}
[modify] https://crrev.com/03d84b4b220cc3569a11ca0f1db2e8ca18f6fa5c/third_party/WebKit/Source/platform/bindings/ScriptWrappableMarkingVisitor.h
[modify] https://crrev.com/03d84b4b220cc3569a11ca0f1db2e8ca18f6fa5c/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitor.h
[modify] https://crrev.com/03d84b4b220cc3569a11ca0f1db2e8ca18f6fa5c/third_party/WebKit/Source/platform/heap/BUILD.gn
[modify] https://crrev.com/03d84b4b220cc3569a11ca0f1db2e8ca18f6fa5c/third_party/WebKit/Source/platform/heap/Handle.h
[modify] https://crrev.com/03d84b4b220cc3569a11ca0f1db2e8ca18f6fa5c/third_party/WebKit/Source/platform/heap/Heap.h
[modify] https://crrev.com/03d84b4b220cc3569a11ca0f1db2e8ca18f6fa5c/third_party/WebKit/Source/platform/heap/HeapAllocator.h
[add] https://crrev.com/03d84b4b220cc3569a11ca0f1db2e8ca18f6fa5c/third_party/WebKit/Source/platform/heap/MarkingVisitor.cpp
[add] https://crrev.com/03d84b4b220cc3569a11ca0f1db2e8ca18f6fa5c/third_party/WebKit/Source/platform/heap/MarkingVisitor.h
[modify] https://crrev.com/03d84b4b220cc3569a11ca0f1db2e8ca18f6fa5c/third_party/WebKit/Source/platform/heap/ObjectStartBitmapTest.cpp
[modify] https://crrev.com/03d84b4b220cc3569a11ca0f1db2e8ca18f6fa5c/third_party/WebKit/Source/platform/heap/ProcessHeap.cpp
[modify] https://crrev.com/03d84b4b220cc3569a11ca0f1db2e8ca18f6fa5c/third_party/WebKit/Source/platform/heap/TraceTraits.h
[delete] https://crrev.com/c56afea8a5029ce3c5e10802a450af6803d5cffa/third_party/WebKit/Source/platform/heap/Visitor.cpp
[modify] https://crrev.com/03d84b4b220cc3569a11ca0f1db2e8ca18f6fa5c/third_party/WebKit/Source/platform/heap/Visitor.h
[delete] https://crrev.com/c56afea8a5029ce3c5e10802a450af6803d5cffa/third_party/WebKit/Source/platform/heap/VisitorImpl.h
[modify] https://crrev.com/03d84b4b220cc3569a11ca0f1db2e8ca18f6fa5c/third_party/WebKit/Source/platform/wtf/HashTable.h

Project Member

Comment 26 by bugdroid1@chromium.org, Feb 28 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/50798c76ae897c28495ca95979b96aa47fff6af7

commit 50798c76ae897c28495ca95979b96aa47fff6af7
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Wed Feb 28 11:23:29 2018

[oilpan] ListHashSetNode: Avoid marking in Trace method

Instead just forward to the Trace method of this visitor which will call
ListHashSetNode::Trace after marking the node.

Bug:  chromium:802273 
Change-Id: Ic13090edead2e26c94ce0f0157e3d3f6d1effcb3
Reviewed-on: https://chromium-review.googlesource.com/939823
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#539786}
[modify] https://crrev.com/50798c76ae897c28495ca95979b96aa47fff6af7/third_party/WebKit/Source/platform/heap/TraceTraits.h
[modify] https://crrev.com/50798c76ae897c28495ca95979b96aa47fff6af7/third_party/WebKit/Source/platform/wtf/ListHashSet.h

Project Member

Comment 27 by bugdroid1@chromium.org, Mar 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/307a8d81c865e16f0356a0ce990d9013a194eb86

commit 307a8d81c865e16f0356a0ce990d9013a194eb86
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Thu Mar 01 21:22:40 2018

[oilpan] Refactor trace dispatch

Instead having a mark method on TraceTraits breaking the abstraction of tracing
vs marking this approach now separates the bits used for tracing from the
marker.

After this CL
- All visitor implementation can refer to base pointers and trace calls, even
  mixins; the trace call provided in the visitor was incorrect in the previous
  approach as it did not consider mixins (but it was unused so far).
- Marking logic moved to MarkingVisitor.
- Inlining shifted: Instead of inlining in the mixins themselves, we inlinine in
  the MarkingVisitor. This should not change performance as we still have one
  virtual call in between (Visitor::Visit). This reduces the binary size by ~73KiB.

These changes allow future visitors to trace objects without going through GCInfo.

Change-Id: I53178b1e4743995eb891646c52cd1dc27135ea26
Bug:  chromium:802273 
Reviewed-on: https://chromium-review.googlesource.com/943564
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#540289}
[modify] https://crrev.com/307a8d81c865e16f0356a0ce990d9013a194eb86/third_party/WebKit/Source/platform/heap/GarbageCollected.h
[modify] https://crrev.com/307a8d81c865e16f0356a0ce990d9013a194eb86/third_party/WebKit/Source/platform/heap/Heap.cpp
[modify] https://crrev.com/307a8d81c865e16f0356a0ce990d9013a194eb86/third_party/WebKit/Source/platform/heap/HeapPage.cpp
[modify] https://crrev.com/307a8d81c865e16f0356a0ce990d9013a194eb86/third_party/WebKit/Source/platform/heap/HeapTest.cpp
[modify] https://crrev.com/307a8d81c865e16f0356a0ce990d9013a194eb86/third_party/WebKit/Source/platform/heap/MarkingVisitor.h
[modify] https://crrev.com/307a8d81c865e16f0356a0ce990d9013a194eb86/third_party/WebKit/Source/platform/heap/ThreadState.cpp
[modify] https://crrev.com/307a8d81c865e16f0356a0ce990d9013a194eb86/third_party/WebKit/Source/platform/heap/TraceTraits.h
[modify] https://crrev.com/307a8d81c865e16f0356a0ce990d9013a194eb86/third_party/WebKit/Source/platform/heap/Visitor.h

Project Member

Comment 28 by bugdroid1@chromium.org, Mar 5 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9c72d4795fa540993da49738fefcd61ef9fa7940

commit 9c72d4795fa540993da49738fefcd61ef9fa7940
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Mon Mar 05 16:53:27 2018

[wrapper-tracing] Only return trace descriptor for wrapper tracing

Similar to Oilpan, only return a struct of callbacks and don't actually
call further into visitors.

Bug:  chromium:802273 
Change-Id: Idd8cae4492876ddfda2bc6b438e4939825f32cdf
Reviewed-on: https://chromium-review.googlesource.com/945788
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#540846}
[modify] https://crrev.com/9c72d4795fa540993da49738fefcd61ef9fa7940/third_party/WebKit/Source/bindings/core/v8/ScriptWrappableMarkingVisitorTest.cpp
[modify] https://crrev.com/9c72d4795fa540993da49738fefcd61ef9fa7940/third_party/WebKit/Source/bindings/core/v8/V8EmbedderGraphBuilder.cpp
[modify] https://crrev.com/9c72d4795fa540993da49738fefcd61ef9fa7940/third_party/WebKit/Source/platform/bindings/ScriptWrappableMarkingVisitor.cpp
[modify] https://crrev.com/9c72d4795fa540993da49738fefcd61ef9fa7940/third_party/WebKit/Source/platform/bindings/ScriptWrappableMarkingVisitor.h
[modify] https://crrev.com/9c72d4795fa540993da49738fefcd61ef9fa7940/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitor.h
[modify] https://crrev.com/9c72d4795fa540993da49738fefcd61ef9fa7940/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitorVerifier.h
[modify] https://crrev.com/9c72d4795fa540993da49738fefcd61ef9fa7940/third_party/WebKit/Source/platform/heap/BlinkGC.h
[modify] https://crrev.com/9c72d4795fa540993da49738fefcd61ef9fa7940/third_party/WebKit/Source/platform/heap/GarbageCollected.h
[modify] https://crrev.com/9c72d4795fa540993da49738fefcd61ef9fa7940/third_party/WebKit/Source/platform/heap/TraceTraits.h

Project Member

Comment 29 by bugdroid1@chromium.org, Mar 6 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/559a8e6a64e21c159f53a9755b024cf645eb4d22

commit 559a8e6a64e21c159f53a9755b024cf645eb4d22
Author: Jan Wilken Dörrie <jdoerrie@chromium.org>
Date: Tue Mar 06 10:15:13 2018

Revert "[wrapper-tracing] Only return trace descriptor for wrapper tracing"

This reverts commit 9c72d4795fa540993da49738fefcd61ef9fa7940.

Reason for revert: Likely culprit of  https://crbug.com/819134 

Original change's description:
> [wrapper-tracing] Only return trace descriptor for wrapper tracing
> 
> Similar to Oilpan, only return a struct of callbacks and don't actually
> call further into visitors.
> 
> Bug:  chromium:802273 
> Change-Id: Idd8cae4492876ddfda2bc6b438e4939825f32cdf
> Reviewed-on: https://chromium-review.googlesource.com/945788
> Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
> Reviewed-by: Kentaro Hara <haraken@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#540846}

TBR=haraken@chromium.org,mlippautz@chromium.org

Change-Id: Iaced3e8e5f9d46540a5fef2f8e1d6c1682217786
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  chromium:802273 
Reviewed-on: https://chromium-review.googlesource.com/950779
Reviewed-by: Jan Wilken Dörrie <jdoerrie@chromium.org>
Commit-Queue: Jan Wilken Dörrie <jdoerrie@chromium.org>
Cr-Commit-Position: refs/heads/master@{#541063}
[modify] https://crrev.com/559a8e6a64e21c159f53a9755b024cf645eb4d22/third_party/WebKit/Source/bindings/core/v8/ScriptWrappableMarkingVisitorTest.cpp
[modify] https://crrev.com/559a8e6a64e21c159f53a9755b024cf645eb4d22/third_party/WebKit/Source/bindings/core/v8/V8EmbedderGraphBuilder.cpp
[modify] https://crrev.com/559a8e6a64e21c159f53a9755b024cf645eb4d22/third_party/WebKit/Source/platform/bindings/ScriptWrappableMarkingVisitor.cpp
[modify] https://crrev.com/559a8e6a64e21c159f53a9755b024cf645eb4d22/third_party/WebKit/Source/platform/bindings/ScriptWrappableMarkingVisitor.h
[modify] https://crrev.com/559a8e6a64e21c159f53a9755b024cf645eb4d22/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitor.h
[modify] https://crrev.com/559a8e6a64e21c159f53a9755b024cf645eb4d22/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitorVerifier.h
[modify] https://crrev.com/559a8e6a64e21c159f53a9755b024cf645eb4d22/third_party/WebKit/Source/platform/heap/BlinkGC.h
[modify] https://crrev.com/559a8e6a64e21c159f53a9755b024cf645eb4d22/third_party/WebKit/Source/platform/heap/GarbageCollected.h
[modify] https://crrev.com/559a8e6a64e21c159f53a9755b024cf645eb4d22/third_party/WebKit/Source/platform/heap/TraceTraits.h

Blockedon: 819134
Project Member

Comment 31 by bugdroid1@chromium.org, Mar 6 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0d6f6a3796474f35c26289d9a27592c0c9385a8c

commit 0d6f6a3796474f35c26289d9a27592c0c9385a8c
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Tue Mar 06 14:27:31 2018

[oilpan] Replace backingstore register calls with proper Trace/Visitor pairs

Instead of registering registering backing stores references from trace
methods, just call a trace function for the backing store which visitors
can override accordingly.

Bug:  chromium:802273 
Change-Id: Iba139643a7bd5ef41a8af470989fb44bd6cfa34d
Reviewed-on: https://chromium-review.googlesource.com/937722
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#541097}
[modify] https://crrev.com/0d6f6a3796474f35c26289d9a27592c0c9385a8c/third_party/WebKit/Source/platform/heap/HeapAllocator.h
[modify] https://crrev.com/0d6f6a3796474f35c26289d9a27592c0c9385a8c/third_party/WebKit/Source/platform/heap/MarkingVerifier.h
[modify] https://crrev.com/0d6f6a3796474f35c26289d9a27592c0c9385a8c/third_party/WebKit/Source/platform/heap/MarkingVisitor.h
[modify] https://crrev.com/0d6f6a3796474f35c26289d9a27592c0c9385a8c/third_party/WebKit/Source/platform/heap/Visitor.h
[modify] https://crrev.com/0d6f6a3796474f35c26289d9a27592c0c9385a8c/third_party/WebKit/Source/platform/wtf/HashTable.h

Project Member

Comment 32 by bugdroid1@chromium.org, Mar 7 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/07861913980abceb9a2b3a988e4d39976599de11

commit 07861913980abceb9a2b3a988e4d39976599de11
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Wed Mar 07 01:33:08 2018

Reland "[wrapper-tracing] Only return trace descriptor for wrapper tracing"

Similar to Oilpan, only return a struct of callbacks and don't actually call
further into visitors.

This reverts commit 559a8e6a64e21c159f53a9755b024cf645eb4d22.

Change-Id: I430c72fd4bee22e7a9f49404f7d461076c613350
Bug:  chromium:802273 ,  chromium:819134 
Reviewed-on: https://chromium-review.googlesource.com/950904
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#541267}
[modify] https://crrev.com/07861913980abceb9a2b3a988e4d39976599de11/third_party/WebKit/Source/bindings/core/v8/ScriptWrappableMarkingVisitorTest.cpp
[modify] https://crrev.com/07861913980abceb9a2b3a988e4d39976599de11/third_party/WebKit/Source/bindings/core/v8/V8EmbedderGraphBuilder.cpp
[modify] https://crrev.com/07861913980abceb9a2b3a988e4d39976599de11/third_party/WebKit/Source/bindings/core/v8/V8EmbedderGraphBuilder.h
[modify] https://crrev.com/07861913980abceb9a2b3a988e4d39976599de11/third_party/WebKit/Source/platform/bindings/ScriptWrappableMarkingVisitor.cpp
[modify] https://crrev.com/07861913980abceb9a2b3a988e4d39976599de11/third_party/WebKit/Source/platform/bindings/ScriptWrappableMarkingVisitor.h
[modify] https://crrev.com/07861913980abceb9a2b3a988e4d39976599de11/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitor.h
[modify] https://crrev.com/07861913980abceb9a2b3a988e4d39976599de11/third_party/WebKit/Source/platform/bindings/ScriptWrappableVisitorVerifier.h
[modify] https://crrev.com/07861913980abceb9a2b3a988e4d39976599de11/third_party/WebKit/Source/platform/heap/BlinkGC.h
[modify] https://crrev.com/07861913980abceb9a2b3a988e4d39976599de11/third_party/WebKit/Source/platform/heap/GarbageCollected.h
[modify] https://crrev.com/07861913980abceb9a2b3a988e4d39976599de11/third_party/WebKit/Source/platform/heap/TraceTraits.h

Project Member

Comment 33 by bugdroid1@chromium.org, Mar 8 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e075e2bef341a54ab8c9a0b9a0c615a82899e15a

commit e075e2bef341a54ab8c9a0b9a0c615a82899e15a
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Thu Mar 08 09:59:20 2018

[oilpan] Rename AdjustAndMark to AdjustPointer

Reflects the change that there marking is actually implemented in the
marking visitors and the adjust traits are only used for getting
the proper descriptions.

Bug:  chromium:802273 
Change-Id: Ib5df76a4689696b766c657fc7676780c694760f0
Reviewed-on: https://chromium-review.googlesource.com/948742
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#541762}
[modify] https://crrev.com/e075e2bef341a54ab8c9a0b9a0c615a82899e15a/third_party/WebKit/Source/platform/heap/GarbageCollected.h
[modify] https://crrev.com/e075e2bef341a54ab8c9a0b9a0c615a82899e15a/third_party/WebKit/Source/platform/heap/Heap.h
[modify] https://crrev.com/e075e2bef341a54ab8c9a0b9a0c615a82899e15a/third_party/WebKit/Source/platform/heap/HeapTest.cpp
[modify] https://crrev.com/e075e2bef341a54ab8c9a0b9a0c615a82899e15a/third_party/WebKit/Source/platform/heap/TraceTraits.h

Project Member

Comment 34 by bugdroid1@chromium.org, Mar 15 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d7cbb5e301da4f424d52b65bbacf8753da944320

commit d7cbb5e301da4f424d52b65bbacf8753da944320
Author: Michael Lippautz <mlippautz@chromium.org>
Date: Thu Mar 15 12:21:04 2018

[oilpan] Add Visitor::VisitWeak for regular weak fields

Intercept weak field visitation in VisitWeak.

Bug:  chromium:802273 
Change-Id: Ie7885409764c9de9debaf1811d84f3928afbc80f
Reviewed-on: https://chromium-review.googlesource.com/962806
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#543349}
[modify] https://crrev.com/d7cbb5e301da4f424d52b65bbacf8753da944320/third_party/WebKit/Source/platform/heap/MarkingVerifier.h
[modify] https://crrev.com/d7cbb5e301da4f424d52b65bbacf8753da944320/third_party/WebKit/Source/platform/heap/MarkingVisitor.h
[modify] https://crrev.com/d7cbb5e301da4f424d52b65bbacf8753da944320/third_party/WebKit/Source/platform/heap/Visitor.h

Status: Fixed (was: Started)

Sign in to add a comment