Replace Vector with Span into LifoAlloc
Categories
(Core :: JavaScript Engine, task, P1)
Tracking
()
Tracking | Status | |
---|---|---|
firefox86 | --- | fixed |
People
(Reporter: arai, Assigned: arai)
References
Details
Attachments
(5 files)
Most of the remaining things is allocation cost for Vector
, and while decoding, we don't have to use Vector
with SystemAllocPolicy
.
we can instead use Span
into LifoAlloc
(or raw XDR buffer, or pinned data later).
Assignee | ||
Comment 1•4 years ago
•
|
||
-
CompilationAtomCache.atoms_
:JS::GCVector<JSAtom*>
-
CompilationGCOutput.functions
:JS::GCVector<JSFunction*>
-
CompilationGCOutput.scopes
:JS::GCVector<js::Scope*>
-
CompilationStencil.regExpData
:Vector<RegExpStencil>
RegExpStencil
is pointer-free, and doesn't need dtor call
-
CompilationStencil.bigIntData
:Vector<BigIntStencil>
BigIntStencil
is contains UniquePtr and needs dtor call
-
CompilationStencil.objLiteralData
:Vector<ObjLiteralStencil>
ObjLiteralWriterBase.code_
is Vector
-
CompilationStencil.scriptData
:Vector<ScriptStencil>
ScriptStencil.sharedData
is RefPtr and needs dtor call (bug 1678458)ScriptStencil.gcThings
is pointer into LifoAlloc, and doesn't need dtor call
-
CompilationStencil.scopeData
:Vector<ScopeStencil>
ScopeStencil.data_
is pointer into LifoAlloc, and doesn't need dtor call
-
CompilationStencil.parserAtomData
:Vector<ParserAtomEntry*>
-
CompilationInfoVector.delazifications
:Vector<CompilationStencil>
- CompilationStencil contains Vector and HashMap
-
CompilationInfoVector.delazificationIndices
:Vector<FunctionIndex>
FunctionIndex
is pointer-free, and doesn't need dtor call
-
StencilModuleMetadata.requestedModules
:Vector<StencilModuleEntry>
StencilModuleEntry
is pointer-free, and doesn't need dtor call
-
StencilModuleMetadata.importEntries
:Vector<StencilModuleEntry>
StencilModuleEntry
is pointer-free, and doesn't need dtor call
-
StencilModuleMetadata.localExportEntries
:Vector<StencilModuleEntry>
StencilModuleEntry
is pointer-free, and doesn't need dtor call
-
StencilModuleMetadata.indirectExportEntries
:Vector<StencilModuleEntry>
StencilModuleEntry
is pointer-free, and doesn't need dtor call
-
StencilModuleMetadata.starExportEntries
:Vector<StencilModuleEntry>
StencilModuleEntry
is pointer-free, and doesn't need dtor call
-
StencilModuleMetadata.functionDecls
:Vector<FunctionDeclaration>
FunctionDeclaration
is pointer-free, and doesn't need dtor call
-
ObjLiteralWriterBase.code_
:Vector<uint8_t>
Assignee | ||
Comment 2•4 years ago
|
||
Depends on D100742
Assignee | ||
Comment 3•4 years ago
|
||
Depends on D100743
Assignee | ||
Comment 4•4 years ago
|
||
Depends on D100744
Assignee | ||
Comment 5•4 years ago
|
||
Depends on D100745
Assignee | ||
Comment 6•4 years ago
|
||
Depends on D100746
Comment 8•4 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/393d302eec5c
https://hg.mozilla.org/mozilla-central/rev/7a3e9963fb46
https://hg.mozilla.org/mozilla-central/rev/b979f7a0b59f
https://hg.mozilla.org/mozilla-central/rev/a6686e098173
https://hg.mozilla.org/mozilla-central/rev/967faaa4f81c
Description
•