Fix building ThreadLocal.cpp with --disable-threads.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158405 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Argyrios Kyrtzidis 2012-06-13 16:30:06 +00:00
parent 575e90e955
commit 1a18e9a2c4

View File

@ -25,9 +25,16 @@ namespace llvm {
using namespace sys;
ThreadLocalImpl::ThreadLocalImpl() { }
ThreadLocalImpl::~ThreadLocalImpl() { }
void ThreadLocalImpl::setInstance(const void* d) { data = const_cast<void*>(d);}
void ThreadLocalImpl::setInstance(const void* d) {
typedef int SIZE_TOO_BIG[sizeof(d) <= sizeof(data) ? 1 : -1];
void **pd = reinterpret_cast<void**>(&data);
*pd = const_cast<void*>(d);
}
const void* ThreadLocalImpl::getInstance() { return data; }
void ThreadLocalImpl::removeInstance() { data = 0; }
void ThreadLocalImpl::removeInstance() {
void **pd = reinterpret_cast<void**>(&data);
*pd = 0;
}
}
#else