Index: Source/heap/ThreadState.cpp |
diff --git a/Source/heap/ThreadState.cpp b/Source/heap/ThreadState.cpp |
index e05fad7848c8feb09597fd828a047727555060f7..87d319e89b7616e442ea75c41892788dc40b395b 100644 |
--- a/Source/heap/ThreadState.cpp |
+++ b/Source/heap/ThreadState.cpp |
@@ -171,6 +171,8 @@ private: |
}; |
+intptr_t* ThreadState::s_mainThreadStackBottom = 0; |
+intptr_t* ThreadState::s_mainThreadStackTop = 0; |
WTF::ThreadSpecific<ThreadState*>* ThreadState::s_threadSpecific = 0; |
ThreadState ThreadState::s_mainThreadState; |
SafePointBarrier* ThreadState::s_safePointBarrier = 0; |
@@ -192,6 +194,8 @@ void ThreadState::init(intptr_t* startOfStack) |
s_threadSpecific = new WTF::ThreadSpecific<ThreadState*>(); |
s_safePointBarrier = new SafePointBarrier(); |
s_mainThreadState.create(startOfStack); |
+ s_mainThreadStackBottom = startOfStack; |
+ s_mainThreadStackTop = reinterpret_cast<intptr_t*>(reinterpret_cast<Address>(startOfStack) - (1 << 16)); |
attachedThreads().add(&s_mainThreadState); |
} |