зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1607930 - Enable deferred allocation mode by default r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D59366 --HG-- extra : moz-landing-system : lando
This commit is contained in:
Родитель
0afeeb787d
Коммит
87bb94fabc
|
@ -312,7 +312,7 @@ class JS_PUBLIC_API RealmBehaviors {
|
|||
// singleton, instead of returning the value which is baked in the JSScript.
|
||||
bool singletonsAsTemplates_ = true;
|
||||
bool isNonLive_ = false;
|
||||
bool deferredParserAlloc_ = false;
|
||||
bool deferredParserAlloc_ = true;
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
|
@ -50,7 +50,6 @@
|
|||
--nursery-strings=on
|
||||
--nursery-bigints=off
|
||||
--nursery-bigints=on
|
||||
--parser-deferred-alloc
|
||||
--spectre-mitigations=off
|
||||
--spectre-mitigations=on
|
||||
--more-compartments
|
||||
|
|
|
@ -472,7 +472,7 @@ struct MOZ_STACK_CLASS EnvironmentPreparer
|
|||
void invoke(JS::HandleObject global, Closure& closure) override;
|
||||
};
|
||||
|
||||
bool shell::enableDeferredMode = false;
|
||||
bool shell::enableDeferredMode = true;
|
||||
bool shell::enableCodeCoverage = false;
|
||||
bool shell::enableDisassemblyDumps = false;
|
||||
bool shell::offthreadCompilation = false;
|
||||
|
@ -11107,8 +11107,9 @@ int main(int argc, char** argv, char** envp) {
|
|||
"Print sub-ms runtime for each file that's run") ||
|
||||
!op.addBoolOption('\0', "code-coverage",
|
||||
"Enable code coverage instrumentation.") ||
|
||||
!op.addBoolOption('\0', "parser-deferred-alloc",
|
||||
"Defer allocation of GC objects until after parser") ||
|
||||
!op.addBoolOption(
|
||||
'\0', "disable-parser-deferred-alloc",
|
||||
"Disable deferred allocation of GC objects until after parser") ||
|
||||
#ifdef DEBUG
|
||||
!op.addBoolOption('O', "print-alloc",
|
||||
"Print the number of allocations at exit") ||
|
||||
|
@ -11431,8 +11432,8 @@ int main(int argc, char** argv, char** envp) {
|
|||
coverage::EnableLCov();
|
||||
}
|
||||
|
||||
enableDeferredMode = op.getBoolOption("parser-deferred-alloc") ||
|
||||
getenv("PARSER_DEFERRED_ALLOC") != nullptr;
|
||||
enableDeferredMode = !op.getBoolOption("disable-parser-deferred-alloc") &&
|
||||
getenv("DISABLE_PARSER_DEFERRED_ALLOC") == nullptr;
|
||||
|
||||
#ifdef JS_WITHOUT_NSPR
|
||||
if (!op.getMultiStringOption("dll").empty()) {
|
||||
|
|
|
@ -2591,8 +2591,8 @@ GlobalObject* JSRuntime::createSelfHostingGlobal(JSContext* cx) {
|
|||
options.creationOptions().setInvisibleToDebugger(true);
|
||||
options.behaviors().setDiscardSource(true);
|
||||
|
||||
bool enableDeferredMode = getenv("PARSER_DEFERRED_ALLOC") != nullptr;
|
||||
options.behaviors().setDeferredParserAlloc(enableDeferredMode);
|
||||
bool disableDeferredMode = getenv("DISABLE_PARSER_DEFERRED_ALLOC") != nullptr;
|
||||
options.behaviors().setDeferredParserAlloc(!disableDeferredMode);
|
||||
|
||||
Realm* realm = NewRealm(cx, nullptr, options);
|
||||
if (!realm) {
|
||||
|
|
|
@ -4159,7 +4159,7 @@
|
|||
# Defer allocation of GC objects as late as possible in a parse
|
||||
- name: javascript.options.parser_defer_allocation
|
||||
type: RelaxedAtomicBool
|
||||
value: false
|
||||
value: true
|
||||
mirror: always
|
||||
|
||||
- name: javascript.options.experimental.fields
|
||||
|
|
Загрузка…
Ссылка в новой задаче