Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/corert.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Kotas <jkotas@microsoft.com>2016-08-17 07:26:13 +0300
committerJan Kotas <jkotas@microsoft.com>2016-08-17 07:26:13 +0300
commit3dfe92890d98c8e6533ad05be23a7f88196caf64 (patch)
tree3eb8b30362ea510ce2f3c9b45d53d80d7304392e /src/Native/Runtime/threadstore.cpp
parentfd1262cd00df3b34e21b847c3bb01297da08f0ab (diff)
Delete low value assert
Delete assert to verify asm get current thread implementation because it was not detecting potential bugs soon enough, required extra platform-specific asm code, and there are number of other asserts that will detect potential mismatch between C++ and asm current thread implementation (e.g. in RhpReversePInvokeAttachOrTrapThread2). [tfs-changeset: 1622722]
Diffstat (limited to 'src/Native/Runtime/threadstore.cpp')
-rw-r--r--src/Native/Runtime/threadstore.cpp29
1 files changed, 0 insertions, 29 deletions
diff --git a/src/Native/Runtime/threadstore.cpp b/src/Native/Runtime/threadstore.cpp
index 20730f0cd..e8f650c2f 100644
--- a/src/Native/Runtime/threadstore.cpp
+++ b/src/Native/Runtime/threadstore.cpp
@@ -68,13 +68,6 @@ ThreadStore::ThreadStore() :
ThreadStore::~ThreadStore()
{
- // @TODO: For now, the approach will be to cleanup everything we can, even in the face of failure in
- // individual operations within this method. We're faced with a difficult situation -- what is the caller
- // supposed to do on failure? Wait and try again? Do nothing? We will assume they do nothing and
- // attempt to free as many of our resources as we can. If any of those fail, we only leak those parts.
- // Whereas if we were to fail on the first operation and then return to the caller without doing anymore,
- // we would have leaked much more.
-
}
// static
@@ -122,10 +115,6 @@ void ThreadStore::AttachCurrentThread(bool fAcquireThreadStoreLock)
// we want to avoid at construction time because the loader lock is held then.
Thread * pAttachingThread = RawGetCurrentThread();
- // On CHK build, validate that our GetThread assembly implementation matches the C++ implementation using
- // TLS.
- CreateCurrentThreadBuffer();
-
// The thread was already initialized, so it is already attached
if (pAttachingThread->IsInitialized())
{
@@ -305,8 +294,6 @@ void ThreadStore::WaitForSuspendComplete()
C_ASSERT(sizeof(Thread) == sizeof(ThreadBuffer));
-EXTERN_C Thread * FASTCALL RhpGetThread();
-
EXTERN_C DECLSPEC_THREAD ThreadBuffer tls_CurrentThread =
{
{ 0 }, // m_rgbAllocContextBuffer
@@ -325,22 +312,6 @@ EXTERN_C DECLSPEC_THREAD ThreadBuffer tls_CurrentThread =
0, // m_uPalThreadIdForLogging
};
-#ifdef CORERT
-Thread * FASTCALL RhpGetThread()
-{
- return (Thread *)&tls_CurrentThread;
-}
-#endif
-
-// static
-void * ThreadStore::CreateCurrentThreadBuffer()
-{
- void * pvBuffer = &tls_CurrentThread;
-
- ASSERT(RhpGetThread() == pvBuffer);
-
- return pvBuffer;
-}
#endif // !DACCESS_COMPILE