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

Issue 463543002: Oilpan: Ensure that classes with virtual trace methods always have vtables for their left-most base… (Closed)

Created:
6 years, 4 months ago by zerny-chromium
Modified:
6 years, 4 months ago
CC:
blink-reviews, kouhei+svg_chromium.org, jsbell+idb_chromium.org, tzik, webcomponents-bugzilla_chromium.org, eae+blinkwatch, fs, eric.carlson_apple.com, apavlov+blink_chromium.org, kinuko+worker_chromium.org, aandrey+blink_chromium.org, Stephen Chennney, rune+blink, timvolodine, falken, Yoav Weiss, krit, mvanouwerkerk+watch_chromium.org, malch+blink_chromium.org, blink-reviews-css, blink-reviews-html_chromium.org, alecflett, yurys+blink_chromium.org, blink-reviews-dom_chromium.org, dglazkov+blink, Rik, gavinp+loader_chromium.org, devtools-reviews_chromium.org, kinuko+serviceworker, pdr., rwlbuis, kenneth.christiansen, nessy, loislo+blink_chromium.org, dgrogan, jsbell+serviceworker_chromium.org, alecflett+watch_chromium.org, caseq+blink_chromium.org, nhiroki, Raymond Toy, eustas+blink_chromium.org, tommyw+watchlist_chromium.org, paulirish+reviews_chromium.org, lushnikov+blink_chromium.org, darktears, Nate Chapin, vcarbune.chromium, philipj_slow, yhirano+watch_chromium.org, michaeln, tyoshino+watch_chromium.org, gavinp+prerender_chromium.org, feature-media-reviews_chromium.org, serviceworker-reviews, gasubic, vsevik+blink_chromium.org, pfeldman+blink_chromium.org, ed+blinkwatch_opera.com, f(malita), cmumford, horo+watch_chromium.org, sergeyv+blink_chromium.org, kinuko+fileapi, gyuyoung.kim_webkit.org, oilpan-reviews
Project:
blink
Visibility:
Public.

Description

Oilpan: Ensure that left-most vtable is the first thing to be initialized for polymorphic classes with trace methods. This is done by ensuring one of two properties for any polymorphic class with a trace method. 1. If the trace method is virtual, then the left-most base class must define a virtual trace method too. 2. If the trace method is non-virtual, then the left-most base class must define some virtual method. The Blink GC plugin statically checks these properties. Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=180281

Patch Set 1 #

Total comments: 4

Patch Set 2 : new requirements #

Total comments: 2

Patch Set 3 : remove SupplementableTracing base #

Patch Set 4 : rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+18 lines, -14 lines) Patch
M Source/core/dom/Document.h View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M Source/core/dom/Document.cpp View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M Source/core/dom/ExecutionContext.cpp View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M Source/core/frame/LocalDOMWindow.cpp View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M Source/core/html/FormAssociatedElement.h View 1 1 chunk +1 line, -1 line 0 comments Download
M Source/core/page/Page.cpp View 1 chunk +1 line, -0 lines 0 comments Download
M Source/core/workers/AbstractWorker.h View 1 1 chunk +5 lines, -0 lines 0 comments Download
M Source/modules/indexeddb/IndexedDBClient.h View 1 chunk +1 line, -1 line 0 comments Download
M Source/platform/LifecycleContext.h View 1 2 chunks +4 lines, -0 lines 0 comments Download
M Source/platform/Supplementable.h View 1 2 3 2 chunks +2 lines, -11 lines 0 comments Download

Messages

Total messages: 35 (0 generated)
zerny-chromium
Plugin side change at: https://codereview.chromium.org/455263004/ PTAL
6 years, 4 months ago (2014-08-11 14:52:03 UTC) #1
haraken
LGTM
6 years, 4 months ago (2014-08-11 15:15:26 UTC) #2
tkent
lgtm
6 years, 4 months ago (2014-08-12 00:51:22 UTC) #3
haraken
The CQ bit was checked by haraken@chromium.org
6 years, 4 months ago (2014-08-12 00:55:10 UTC) #4
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/zerny@chromium.org/463543002/1
6 years, 4 months ago (2014-08-12 00:56:10 UTC) #5
commit-bot: I haz the power
FYI, CQ is re-trying this CL (attempt #1). The failing builders are: android_blink_compile_dbg on tryserver.blink ...
6 years, 4 months ago (2014-08-12 01:30:56 UTC) #6
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 4 months ago (2014-08-12 01:37:22 UTC) #7
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_gn_rel on tryserver.blink (http://build.chromium.org/p/tryserver.blink/builders/linux_chromium_gn_rel/builds/7068) mac_blink_compile_dbg on tryserver.blink (http://build.chromium.org/p/tryserver.blink/builders/mac_blink_compile_dbg/builds/15876) mac_blink_rel ...
6 years, 4 months ago (2014-08-12 01:37:33 UTC) #8
Mads Ager (chromium)
LGTM with a couple of nits. https://codereview.chromium.org/463543002/diff/1/Source/core/events/DOMWindowEventQueue.cpp File Source/core/events/DOMWindowEventQueue.cpp (right): https://codereview.chromium.org/463543002/diff/1/Source/core/events/DOMWindowEventQueue.cpp#newcode43 Source/core/events/DOMWindowEventQueue.cpp:43: virtual void trace(Visitor* ...
6 years, 4 months ago (2014-08-12 06:07:04 UTC) #9
haraken
https://codereview.chromium.org/463543002/diff/1/Source/core/fetch/ResourceClient.h File Source/core/fetch/ResourceClient.h (right): https://codereview.chromium.org/463543002/diff/1/Source/core/fetch/ResourceClient.h#newcode28 Source/core/fetch/ResourceClient.h:28: #include "platform/heap/Handle.h" On 2014/08/12 06:07:04, Mads Ager (chromium) wrote: ...
6 years, 4 months ago (2014-08-12 06:15:51 UTC) #10
zerny-chromium
The current requirements are too conservative and end up forcing us to make all trace ...
6 years, 4 months ago (2014-08-12 11:49:40 UTC) #11
zerny-chromium
Simplified. PTAL.
6 years, 4 months ago (2014-08-13 12:19:43 UTC) #12
haraken
LGTM
6 years, 4 months ago (2014-08-13 12:25:34 UTC) #13
sof
https://codereview.chromium.org/463543002/diff/20001/Source/platform/Supplementable.h File Source/platform/Supplementable.h (right): https://codereview.chromium.org/463543002/diff/20001/Source/platform/Supplementable.h#newcode162 Source/platform/Supplementable.h:162: class SupplementableTracing<T, true> { What value does this templated ...
6 years, 4 months ago (2014-08-13 12:29:09 UTC) #14
Mads Ager (chromium)
LGTM, with Sigbjorn's nit.
6 years, 4 months ago (2014-08-13 12:32:16 UTC) #15
zerny-chromium
Thanks for the reviews! https://codereview.chromium.org/463543002/diff/20001/Source/platform/Supplementable.h File Source/platform/Supplementable.h (right): https://codereview.chromium.org/463543002/diff/20001/Source/platform/Supplementable.h#newcode162 Source/platform/Supplementable.h:162: class SupplementableTracing<T, true> { On ...
6 years, 4 months ago (2014-08-13 13:07:02 UTC) #16
zerny-chromium
The CQ bit was checked by zerny@chromium.org
6 years, 4 months ago (2014-08-13 13:07:07 UTC) #17
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/zerny@chromium.org/463543002/40001
6 years, 4 months ago (2014-08-13 13:08:02 UTC) #18
commit-bot: I haz the power
FYI, CQ is re-trying this CL (attempt #1). The failing builders are: linux_chromium_gn_rel on tryserver.blink ...
6 years, 4 months ago (2014-08-13 14:11:52 UTC) #19
sof
On 2014/08/13 13:07:02, zerny-chromium wrote: > Thanks for the reviews! > > https://codereview.chromium.org/463543002/diff/20001/Source/platform/Supplementable.h > File ...
6 years, 4 months ago (2014-08-13 14:28:02 UTC) #20
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 4 months ago (2014-08-13 15:27:56 UTC) #21
commit-bot: I haz the power
Try jobs failed on following builders: win_blink_rel on tryserver.blink (http://build.chromium.org/p/tryserver.blink/builders/win_blink_rel/builds/22552)
6 years, 4 months ago (2014-08-13 15:27:58 UTC) #22
zerny-chromium
The CQ bit was checked by zerny@chromium.org
6 years, 4 months ago (2014-08-14 06:51:21 UTC) #23
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/zerny@chromium.org/463543002/40001
6 years, 4 months ago (2014-08-14 06:51:41 UTC) #24
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 4 months ago (2014-08-14 06:52:05 UTC) #25
commit-bot: I haz the power
Failed to apply patch for Source/core/dom/ExecutionContext.cpp: While running patch -p1 --forward --force --no-backup-if-mismatch; patching file ...
6 years, 4 months ago (2014-08-14 06:52:09 UTC) #26
zerny-chromium
The CQ bit was checked by zerny@chromium.org
6 years, 4 months ago (2014-08-14 07:00:56 UTC) #27
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/zerny@chromium.org/463543002/60001
6 years, 4 months ago (2014-08-14 07:01:35 UTC) #28
commit-bot: I haz the power
FYI, CQ is re-trying this CL (attempt #1). The failing builders are: linux_blink_dbg on tryserver.blink ...
6 years, 4 months ago (2014-08-14 10:44:53 UTC) #29
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 4 months ago (2014-08-14 13:11:32 UTC) #30
commit-bot: I haz the power
Try jobs failed on following builders: linux_blink_rel on tryserver.blink (http://build.chromium.org/p/tryserver.blink/builders/linux_blink_rel/builds/20625)
6 years, 4 months ago (2014-08-14 13:11:36 UTC) #31
zerny-chromium
The CQ bit was checked by zerny@chromium.org
6 years, 4 months ago (2014-08-14 14:10:45 UTC) #32
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/zerny@chromium.org/463543002/60001
6 years, 4 months ago (2014-08-14 14:11:41 UTC) #33
commit-bot: I haz the power
FYI, CQ is re-trying this CL (attempt #1). The failing builders are: linux_blink_dbg on tryserver.blink ...
6 years, 4 months ago (2014-08-14 15:27:49 UTC) #34
commit-bot: I haz the power
6 years, 4 months ago (2014-08-14 16:33:18 UTC) #35
Message was sent while issue was closed.
Committed patchset #4 (60001) as 180281

Powered by Google App Engine
This is Rietveld 408576698