Bug 1899090 - Part 2: Rebuild the incremental encoding with InitialStencilAndDelazifications. r=nbp

Create InitialStencilAndDelazifications and associate it to ScriptSourceObject,
and store on-demand delazifications into the InitialStencilAndDelazifications.

InitialStencilAndDelazifications is merged into single CompilationStencil when
finishing, but the JS::Stencil-based API is going to be rewritten later not
to merge.

Differential Revision: https://phabricator.services.mozilla.com/D230378
This commit is contained in:
Tooru Fujisawa
2024-12-04 00:54:44 +00:00
parent 1f8fbee7b9
commit c1b8d7b50e
12 changed files with 274 additions and 262 deletions

View File

@@ -2762,7 +2762,7 @@ static void InstantiateStencil(
}
if (aEncodeBytecode) {
if (!JS::StartIncrementalEncoding(aCx, std::move(aStencil),
if (!JS::StartIncrementalEncoding(aCx, script, aStencil,
incrementalEncodingAlreadyStarted)) {
aRv.NoteJSContextException(aCx);
return;