зеркало из https://github.com/mozilla/gecko-dev.git
Bug 538440 - We never jit DOM workers. r=mrbkap.
This commit is contained in:
Родитель
a4e8082e48
Коммит
aa87db6fa2
|
@ -997,8 +997,7 @@ nsDOMThreadService::CreateJSContext()
|
|||
};
|
||||
JS_SetContextSecurityCallbacks(cx, &securityCallbacks);
|
||||
|
||||
static JSDebugHooks debugHooks;
|
||||
JS_SetContextDebugHooks(cx, &debugHooks);
|
||||
JS_ClearContextDebugHooks(cx);
|
||||
|
||||
nsresult rv = nsContentUtils::XPConnect()->
|
||||
SetSecurityManagerForJSContext(cx, gWorkerSecurityManager, 0);
|
||||
|
|
|
@ -1072,6 +1072,8 @@ typedef struct JSResolvingEntry {
|
|||
|
||||
#define JSRESOLVE_INFER 0xffff /* infer bits from current bytecode */
|
||||
|
||||
extern const JSDebugHooks js_NullDebugHooks; /* defined in jsdbgapi.cpp */
|
||||
|
||||
struct JSContext {
|
||||
/*
|
||||
* If this flag is set, we were asked to call back the operation callback
|
||||
|
@ -1248,8 +1250,9 @@ struct JSContext {
|
|||
void updateJITEnabled() {
|
||||
#ifdef JS_TRACER
|
||||
jitEnabled = ((options & JSOPTION_JIT) &&
|
||||
!runtime->debuggerInhibitsJIT() &&
|
||||
debugHooks == &runtime->globalDebugHooks);
|
||||
(debugHooks == &js_NullDebugHooks ||
|
||||
(debugHooks == &runtime->globalDebugHooks &&
|
||||
!runtime->debuggerInhibitsJIT())));
|
||||
#endif
|
||||
}
|
||||
|
||||
|
|
|
@ -1828,11 +1828,13 @@ JS_GetGlobalDebugHooks(JSRuntime *rt)
|
|||
return &rt->globalDebugHooks;
|
||||
}
|
||||
|
||||
const JSDebugHooks js_NullDebugHooks = {};
|
||||
|
||||
JS_PUBLIC_API(JSDebugHooks *)
|
||||
JS_SetContextDebugHooks(JSContext *cx, const JSDebugHooks *hooks)
|
||||
{
|
||||
JS_ASSERT(hooks);
|
||||
if (hooks != &cx->runtime->globalDebugHooks)
|
||||
if (hooks != &cx->runtime->globalDebugHooks && hooks != &js_NullDebugHooks)
|
||||
js_LeaveTrace(cx);
|
||||
|
||||
#ifdef JS_TRACER
|
||||
|
@ -1847,6 +1849,12 @@ JS_SetContextDebugHooks(JSContext *cx, const JSDebugHooks *hooks)
|
|||
return old;
|
||||
}
|
||||
|
||||
JS_PUBLIC_API(JSDebugHooks *)
|
||||
JS_ClearContextDebugHooks(JSContext *cx)
|
||||
{
|
||||
return JS_SetContextDebugHooks(cx, &js_NullDebugHooks);
|
||||
}
|
||||
|
||||
#ifdef MOZ_SHARK
|
||||
|
||||
#include <CHUD/CHUD.h>
|
||||
|
|
|
@ -427,6 +427,10 @@ JS_GetGlobalDebugHooks(JSRuntime *rt);
|
|||
extern JS_PUBLIC_API(JSDebugHooks *)
|
||||
JS_SetContextDebugHooks(JSContext *cx, const JSDebugHooks *hooks);
|
||||
|
||||
/* Disable debug hooks for this context. */
|
||||
extern JS_PUBLIC_API(JSDebugHooks *)
|
||||
JS_ClearContextDebugHooks(JSContext *cx);
|
||||
|
||||
#ifdef MOZ_SHARK
|
||||
|
||||
extern JS_PUBLIC_API(JSBool)
|
||||
|
|
Загрузка…
Ссылка в новой задаче