X-Git-Url: https://git.saurik.com/apple/javascriptcore.git/blobdiff_plain/6fe7ccc865dc7d7541b93c5bcaf6368d2c98a174..8b637bb680022adfddad653280734877951535a9:/heap/MachineStackMarker.h?ds=inline diff --git a/heap/MachineStackMarker.h b/heap/MachineStackMarker.h index eeb7db9..44ad8b6 100644 --- a/heap/MachineStackMarker.h +++ b/heap/MachineStackMarker.h @@ -22,14 +22,14 @@ #ifndef MachineThreads_h #define MachineThreads_h -#include #include +#include #include namespace JSC { - class Heap; class ConservativeRoots; + class Heap; class MachineThreads { WTF_MAKE_NONCOPYABLE(MachineThreads); @@ -39,7 +39,11 @@ namespace JSC { void gatherConservativeRoots(ConservativeRoots&, void* stackCurrent); +#if PLATFORM(IOS) JS_EXPORT_PRIVATE void makeUsableFromMultipleThreads(); +#else + void makeUsableFromMultipleThreads(); +#endif JS_EXPORT_PRIVATE void addCurrentThread(); // Only needs to be called by clients that can use the same heap from multiple threads. private: @@ -52,10 +56,12 @@ namespace JSC { void gatherFromOtherThread(ConservativeRoots&, Thread*); - Heap* m_heap; Mutex m_registeredThreadsMutex; Thread* m_registeredThreads; - pthread_key_t m_threadSpecific; + WTF::ThreadSpecificKey m_threadSpecific; +#if !ASSERT_DISABLED + Heap* m_heap; +#endif }; } // namespace JSC