Move CompilationStencil.{moduleMetadata, asmJS} out of CompilationStencil
Categories
(Core :: JavaScript Engine, task, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox86 | --- | fixed |
People
(Reporter: arai, Assigned: arai)
References
(Blocks 1 open bug)
Details
Attachments
(8 files)
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details |
StencilModuleMetadata
contains multiple vectors, and sizeof(StencilModuleMetadata)
is 152.
bug 1681011 made moduleMetadata
field Maybe
so that the ctor/dtor cost is removed, but still it takes some space, especially in delazification vector, where the field isn't used.
if we can move moduleMetadata
out of CompilationStencil
, it will reduce the memory taken by delazification vector.
Assignee | ||
Comment 1•4 years ago
|
||
or perhaps we can add a new struct inside CompilationStencil that contains fields shared between initial and delazification, and use the new struct in delazification vector.
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Comment 2•4 years ago
|
||
I'll add InitialSpecificCompilationStencil
and move asmJS
/moduleMetadata
there.
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Comment 3•4 years ago
|
||
New plan:
- Rename
CompilationStencil
toBaseCompilationStencil
- Rename
CompilationInfoVector
toCompilationStencilSet
- Rename
CompilationInfo
toCompilationStencil
- Make
CompilationStencil
a subclass ofBaseCompilationStencil
, so thatstencil
field becomesthis
- Make
CompilationStencilSet
a subclass ofCompilationStencil
, so thatinitial
field becomesthis
- move
asmJS
,moduleMetadata
,scriptExtra
toCompilationStencil
, so that they become initial-stencil-only field, and delazification array (BaseCompilationStencil
array) becomes smaller
the actual patch stack uses a bit different order.
Assignee | ||
Comment 4•4 years ago
|
||
Assignee | ||
Comment 5•4 years ago
|
||
Depends on D101573
Assignee | ||
Comment 6•4 years ago
|
||
Depends on D101574
Assignee | ||
Comment 7•4 years ago
|
||
Depends on D101575
Assignee | ||
Comment 8•4 years ago
|
||
Depends on D101576
Assignee | ||
Comment 9•4 years ago
|
||
Depends on D101577
Assignee | ||
Comment 10•4 years ago
|
||
Depends on D101578
Assignee | ||
Comment 11•4 years ago
|
||
Depends on D101579
Comment 12•4 years ago
|
||
Comment 13•4 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/de1ed4223c83
https://hg.mozilla.org/mozilla-central/rev/bd5dc5388b5d
https://hg.mozilla.org/mozilla-central/rev/c7533b190c9d
https://hg.mozilla.org/mozilla-central/rev/2328d39800e3
https://hg.mozilla.org/mozilla-central/rev/829094e9aee5
https://hg.mozilla.org/mozilla-central/rev/10f2977fc704
https://hg.mozilla.org/mozilla-central/rev/5bc769813a88
https://hg.mozilla.org/mozilla-central/rev/316011629013
Description
•