summaryrefslogtreecommitdiffstats
path: root/js
diff options
context:
space:
mode:
Diffstat (limited to 'js')
-rw-r--r--js/src/jsapi.cpp3
-rw-r--r--js/src/jsapi.h1
-rw-r--r--js/xpconnect/src/XPCJSContext.cpp5
3 files changed, 8 insertions, 1 deletions
diff --git a/js/src/jsapi.cpp b/js/src/jsapi.cpp
index cd370e42c..3c1dbfb91 100644
--- a/js/src/jsapi.cpp
+++ b/js/src/jsapi.cpp
@@ -6608,6 +6608,9 @@ JS_SetGlobalJitCompilerOption(JSContext* cx, JSJitCompilerOption opt, uint32_t v
case JSJITCOMPILER_ION_INTERRUPT_WITHOUT_SIGNAL:
jit::JitOptions.ionInterruptWithoutSignals = !!value;
break;
+ case JSJITCOMPILER_ION_INLINING:
+ jit::JitOptions.disableInlining = !value;
+ break;
default:
break;
}
diff --git a/js/src/jsapi.h b/js/src/jsapi.h
index 5cdfd958e..2c221dbe4 100644
--- a/js/src/jsapi.h
+++ b/js/src/jsapi.h
@@ -5906,6 +5906,7 @@ JS_SetOffthreadIonCompilationEnabled(JSContext* cx, bool enabled);
Register(ION_GVN_ENABLE, "ion.gvn.enable") \
Register(ION_FORCE_IC, "ion.forceinlineCaches") \
Register(ION_ENABLE, "ion.enable") \
+ Register(ION_INLINING, "ion.inlining") \
Register(ION_INTERRUPT_WITHOUT_SIGNAL, "ion.interrupt-without-signals") \
Register(ION_CHECK_RANGE_ANALYSIS, "ion.check-range-analysis") \
Register(BASELINE_ENABLE, "baseline.enable") \
diff --git a/js/xpconnect/src/XPCJSContext.cpp b/js/xpconnect/src/XPCJSContext.cpp
index 511bc8a98..e941b8d75 100644
--- a/js/xpconnect/src/XPCJSContext.cpp
+++ b/js/xpconnect/src/XPCJSContext.cpp
@@ -1,5 +1,4 @@
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/* vim: set ts=8 sts=4 et sw=4 tw=99: */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
@@ -1429,6 +1428,8 @@ ReloadPrefsCallback(const char* pref, void* data)
bool unboxedObjects = Preferences::GetBool(JS_OPTIONS_DOT_STR "unboxed_objects");
+ bool inlining = Preferences::GetBool(JS_OPTIONS_DOT_STR "ion.inlining");
+
sSharedMemoryEnabled = Preferences::GetBool(JS_OPTIONS_DOT_STR "shared_memory");
#ifdef DEBUG
@@ -1459,6 +1460,8 @@ ReloadPrefsCallback(const char* pref, void* data)
useIonEager ? 0 : -1);
JS_SetGlobalJitCompilerOption(cx, JSJITCOMPILER_UNBOXED_OBJECTS,
unboxedObjects);
+ JS_SetGlobalJitCompilerOption(cx, JSJITCOMPILER_ION_INLINING,
+ inlining);
}
XPCJSContext::~XPCJSContext()