summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/runtime/JSLock.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/JavaScriptCore/runtime/JSLock.h')
-rw-r--r--Source/JavaScriptCore/runtime/JSLock.h17
1 files changed, 11 insertions, 6 deletions
diff --git a/Source/JavaScriptCore/runtime/JSLock.h b/Source/JavaScriptCore/runtime/JSLock.h
index 94108d013..4c42dc0ae 100644
--- a/Source/JavaScriptCore/runtime/JSLock.h
+++ b/Source/JavaScriptCore/runtime/JSLock.h
@@ -58,6 +58,10 @@ namespace JSC {
public:
JS_EXPORT_PRIVATE GlobalJSLock();
JS_EXPORT_PRIVATE ~GlobalJSLock();
+
+ static void initialize();
+ private:
+ static Mutex* s_sharedInstanceLock;
};
class JSLockHolder {
@@ -91,12 +95,6 @@ namespace JSC {
unsigned dropAllLocksUnconditionally();
void grabAllLocks(unsigned lockCount);
- SpinLock m_spinLock;
- Mutex m_lock;
- ThreadIdentifier m_ownerThread;
- intptr_t m_lockCount;
- unsigned m_lockDropDepth;
-
class DropAllLocks {
WTF_MAKE_NONCOPYABLE(DropAllLocks);
public:
@@ -108,6 +106,13 @@ namespace JSC {
intptr_t m_lockCount;
RefPtr<JSGlobalData> m_globalData;
};
+
+ private:
+ SpinLock m_spinLock;
+ Mutex m_lock;
+ ThreadIdentifier m_ownerThread;
+ intptr_t m_lockCount;
+ unsigned m_lockDropDepth;
};
} // namespace