forked from mirrors/gecko-dev
Bug 1812001: Fix iterator-indices jitoption r=jandem
Making this more like other ion optimization flags. Depends on D167733 Differential Revision: https://phabricator.services.mozilla.com/D167734
This commit is contained in:
parent
f9ec010269
commit
e3827c7349
2 changed files with 13 additions and 5 deletions
|
|
@ -36,6 +36,8 @@
|
|||
--ion-regalloc=testbed
|
||||
--ion-scalar-replacement=off
|
||||
--ion-scalar-replacement=on
|
||||
--ion-iterator-indices=off
|
||||
--ion-iterator-indices=on
|
||||
--ion-warmup-threshold=0
|
||||
--ion-warmup-threshold=10
|
||||
--ion-warmup-threshold=100
|
||||
|
|
@ -51,7 +53,6 @@
|
|||
--no-jit-backend
|
||||
--enable-watchtower
|
||||
--disable-watchtower
|
||||
--enable-iterator-indices
|
||||
|
||||
# GC-related
|
||||
# These 2 flags can cause the shell to slow down
|
||||
|
|
|
|||
|
|
@ -11015,8 +11015,14 @@ static bool SetContextOptions(JSContext* cx, const OptionParser& op) {
|
|||
jit::JitOptions.enableWatchtowerMegamorphic = false;
|
||||
}
|
||||
|
||||
if (op.getBoolOption("enable-iterator-indices")) {
|
||||
jit::JitOptions.disableIteratorIndices = false;
|
||||
if (const char* str = op.getStringOption("ion-iterator-indices")) {
|
||||
if (strcmp(str, "on") == 0) {
|
||||
jit::JitOptions.disableIteratorIndices = false;
|
||||
} else if (strcmp(str, "off") == 0) {
|
||||
jit::JitOptions.disableIteratorIndices = true;
|
||||
} else {
|
||||
return OptionFailure("ion-iterator-indices", str);
|
||||
}
|
||||
}
|
||||
|
||||
#if defined(JS_SIMULATOR_ARM)
|
||||
|
|
@ -11761,6 +11767,9 @@ int main(int argc, char** argv) {
|
|||
!op.addStringOption(
|
||||
'\0', "ion-optimize-shapeguards", "on/off",
|
||||
"Eliminate redundant shape guards (default: on, off to disable)") ||
|
||||
!op.addStringOption('\0', "ion-iterator-indices", "on/off",
|
||||
"Optimize property access in for-in loops "
|
||||
"(default: on, off to disable)") ||
|
||||
!op.addBoolOption('\0', "ion-check-range-analysis",
|
||||
"Range analysis checking") ||
|
||||
!op.addBoolOption('\0', "ion-extra-checks",
|
||||
|
|
@ -11777,8 +11786,6 @@ int main(int argc, char** argv) {
|
|||
"Enable Watchtower optimizations") ||
|
||||
!op.addBoolOption('\0', "disable-watchtower",
|
||||
"Disable Watchtower optimizations") ||
|
||||
!op.addBoolOption('\0', "enable-iterator-indices",
|
||||
"Enable iterator indices optimization") ||
|
||||
!op.addBoolOption('\0', "scalar-replace-arguments",
|
||||
"Use scalar replacement to optimize ArgumentsObject") ||
|
||||
!op.addStringOption(
|
||||
|
|
|
|||
Loading…
Reference in a new issue