Try to lazily allocate slots for attributes marked as FrozenArray
Categories
(Core :: DOM: Bindings (WebIDL), task, P1)
Tracking
()
Tracking | Status | |
---|---|---|
firefox134 | --- | fixed |
People
(Reporter: hsinyi, Assigned: peterv)
References
Details
Attachments
(5 files, 1 obsolete file)
spin off from bug 1920082 comment 25 -
Each attribute marked with [FrozenArray] requires a reserved slot on the JS object. We went from 1 to 8 slots, so I think that means the size of the JSObject went from a size of 4 64-bit values to 10 (JSObject_slots2 to JSObject_slots8). I'll try to make this more lazily allocated, but it's annoying because it means more special cases in the generated code.
Assignee | ||
Comment 1•3 months ago
|
||
Assignee | ||
Comment 2•3 months ago
|
||
Assignee | ||
Comment 3•3 months ago
|
||
Assignee | ||
Comment 4•3 months ago
|
||
HTML reflected IDL attributes that return a FrozenArray<T>? need to cache the
FrozenArray. This switches them from using a reserved slot on the JS object
per attribute to using an array of values for all of these types of attributes
for a particular interface, which is then stored in one reserved slot on the JS
object. This reduces the memory reserved for these attributes if they're not
actually used.
Updated•3 months ago
|
Assignee | ||
Comment 5•3 months ago
|
||
Assignee | ||
Comment 6•3 months ago
|
||
https://hg.mozilla.org/mozilla-central/rev/129aa517bd23
https://hg.mozilla.org/mozilla-central/rev/028c77b002e3
https://hg.mozilla.org/mozilla-central/rev/88a6b0fd4e68
https://hg.mozilla.org/mozilla-central/rev/5560b5784075
Description
•