mirror of
https://github.com/servo/servo
synced 2026-04-28 10:27:40 +02:00
Auto merge of #10325 - stjepang:pref-disable-jit, r=mbrubeck
Add preferences to enable/disable the JITs When creating a runtime (script.rs), we check prefs and then enable or disable the JITs (Baseline and Ion) accordingly. Closes #10278. <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/10325) <!-- Reviewable:end -->
This commit is contained in:
@@ -57,7 +57,7 @@ use js::jsapi::{DisableIncrementalGC, JS_AddExtraGCRootsTracer, JS_SetWrapObject
|
||||
use js::jsapi::{GCDescription, GCProgress, JSGCInvocationKind, SetGCSliceCallback};
|
||||
use js::jsapi::{JSAutoRequest, JSGCStatus, JS_GetRuntime, JS_SetGCCallback, SetDOMCallbacks};
|
||||
use js::jsapi::{JSContext, JSRuntime, JSTracer};
|
||||
use js::jsapi::{JSObject, SetPreserveWrapperCallback};
|
||||
use js::jsapi::{JSObject, RuntimeOptionsRef, SetPreserveWrapperCallback};
|
||||
use js::jsval::UndefinedValue;
|
||||
use js::rust::Runtime;
|
||||
use layout_interface::{ReflowQueryType};
|
||||
@@ -108,6 +108,7 @@ use task_source::user_interaction::UserInteractionTaskSource;
|
||||
use time::{Tm, now};
|
||||
use url::Url;
|
||||
use util::opts;
|
||||
use util::prefs::get_pref;
|
||||
use util::str::DOMString;
|
||||
use util::thread;
|
||||
use util::thread_state;
|
||||
@@ -739,6 +740,15 @@ impl ScriptThread {
|
||||
DisableIncrementalGC(runtime.rt());
|
||||
}
|
||||
|
||||
// Enable or disable the JITs.
|
||||
let rt_opts = unsafe { &mut *RuntimeOptionsRef(runtime.rt()) };
|
||||
if let Some(val) = get_pref("js.baseline.enabled").as_boolean() {
|
||||
rt_opts.set_baseline_(val);
|
||||
}
|
||||
if let Some(val) = get_pref("js.ion.enabled").as_boolean() {
|
||||
rt_opts.set_ion_(val);
|
||||
}
|
||||
|
||||
runtime
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user