[wpt-sync] Sync PR 43661 - DOMWindow: Set wrapper reference to global proxy object
Categories
(Testing :: web-platform-tests, task, P4)
Tracking
(firefox122 fixed)
| Tracking | Status | |
|---|---|---|
| firefox122 | --- | fixed |
People
(Reporter: wpt-sync, Unassigned)
References
()
Details
(Whiteboard: [wptsync downstream])
Sync web-platform-tests PR 43661 into mozilla-central (this bug is closed when the sync is complete).
PR: https://github.com/web-platform-tests/wpt/pull/43661
Details from upstream follow.
Michael Lippautz <mlippautz@chromium.org> wrote:
DOMWindow: Set wrapper reference to global proxy object
The JS global proxy object already points to the
{Local,Remote}DOMWindow via internal field. Make
DOMWindow::main_world_wrapper_ point to the global proxy object as
well. Avoid using the already existing AssociateWithWrapper() methods
as they require that a context is properly set up.{Local,Remote}WindowProxy's global_proxy_ field becomes a regular
traced reference without setting up the class id. The GC treats it
the same way for liveness but heap snapshot generation would not
consider it as a candidate to merge nodes with a JS object as it's not
ScriptWrappable's::main_world_wrapper_.This way Wrappable/Wrapper pairs (represented by ScriptWrappable/V8
objects) are properly set up in the entire codebase and may on a
high-level considered as one object or "entity". This allows heap
snapshot generation to merge the nodes without considering the class
id state on the reference. Ultimately, this allows us to get rid of
the class id eventually and speed up all TracedReference creation.Tests: DevTools frontend e2e memory/*
Bug: chromium:1218404
Change-Id: I4e3273c6ca7da8e3241b4f9ac78c76932c52bce2
Reviewed-on: https://chromium-review.googlesource.com/2953842
WPT-Export-Revision: bb00969df30e0f31a34a715dfd4aa66d80a2283a
| Assignee | ||
Comment 1•2 years ago
|
||
| Assignee | ||
Comment 2•2 years ago
|
||
| Assignee | ||
Comment 4•2 years ago
|
||
Comment 5•2 years ago
|
||
| bugherder | ||
Description
•