Closed Bug 1661079 Opened 3 months ago Closed 3 months ago

Make Vector/HashMap in CompilationInfo independent from JSContext

Categories

(Core :: JavaScript Engine, task, P1)

task

Tracking

()

RESOLVED FIXED
82 Branch
Tracking Status
firefox82 --- fixed

People

(Reporter: arai, Assigned: arai)

References

Details

Attachments

(16 files)

47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review

To pass CompilationInfo between threads, containers used there shouldn't use js::TempAllocPolicy, otherwise it will refer JSContext in other thread.
All containers used there should use js::SystemAllocPolicy, and manually report OOM.

This bug will leave CompilationInfo.cx field, given it's easy to workaround it and fixing it later is simpler

No longer depends on: 1649968
Depends on: 1661098
Pushed by arai_a@mac.com:
https://hg.mozilla.org/integration/autoland/rev/b2665585f2a5
Part 1: Use SystemAllocPolicy in CompilationInput.atoms. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/aa42c2318789
Part 2: Remove JSContext* parameter from CompilationInput. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/30bc5659308e
Part 3: Use SystemAllocPolicy in CompilationStencil.regExpData. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/52c2d490e6ce
Part 4: Use SystemAllocPolicy in CompilationStencil.bigIntData. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/9cba1a562dbe
Part 5: Use SystemAllocPolicy in CompilationStencil.objLiteralData. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/a82c8bd5c573
Part 6: Use SystemAllocPolicy in CompilationStencil.scriptData. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/8eeee3d8dfdf
Part 7: Use SystemAllocPolicy in CompilationStencil.scopeData. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/96c0243b6927
Part 8: Use SystemAllocPolicy in CompilationStencil.asmJS. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/6f9637872a7d
Part 9: Use SystemAllocPolicy in StencilModuleMetadata::EntryVector and ModuleBuilder::RequestedModuleVector. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/7d83a48e9034
Part 10: Use SystemAllocPolicy in FunctionDeclarationVector. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/39daa05687a9
Part 11: Remove JSContext* parameter from StencilModuleMetadata. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/6794706d0c22
Part 12: Use SystemAllocPolicy in WellKnownParserAtoms.entrySet_ and ParserAtomsTable.entrySet_. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/65ac0c614053
Part 13: Remove JSContext* parameter from WellKnownParserAtoms. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/950686a24954
Part 14: Use JSRuntime* parameter in ParserAtomsTable and CompilationStencil. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/d60d7ef431a3
Part 15: Add warning about CompilationInfo.cx. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/3c97bd31c365
Part 16: Remove JSContext* parameter from ScriptStencil. r=tcampbell
You need to log in before you can comment on or make changes to this bug.