summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Support
diff options
context:
space:
mode:
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>2012-06-26 17:13:58 +0000
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>2012-06-26 17:13:58 +0000
commit46785f946194f335c302cc1e5702de1d1276c0d0 (patch)
tree6c27eaa3f0365b4099c95abdb6e9024740be46ec /llvm/lib/Support
parent59a0d3243b98189f218de6ae9a0f1e7c6a1390c7 (diff)
downloadbcm5719-llvm-46785f946194f335c302cc1e5702de1d1276c0d0.tar.gz
bcm5719-llvm-46785f946194f335c302cc1e5702de1d1276c0d0.zip
Fix ThreadLocalImpl::getInstance for --disable-threads.
PR13114. llvm-svn: 159210
Diffstat (limited to 'llvm/lib/Support')
-rw-r--r--llvm/lib/Support/ThreadLocal.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/llvm/lib/Support/ThreadLocal.cpp b/llvm/lib/Support/ThreadLocal.cpp
index 109580478de..0587aaec7e6 100644
--- a/llvm/lib/Support/ThreadLocal.cpp
+++ b/llvm/lib/Support/ThreadLocal.cpp
@@ -30,10 +30,12 @@ void ThreadLocalImpl::setInstance(const void* d) {
void **pd = reinterpret_cast<void**>(&data);
*pd = const_cast<void*>(d);
}
-const void* ThreadLocalImpl::getInstance() { return data; }
-void ThreadLocalImpl::removeInstance() {
+const void* ThreadLocalImpl::getInstance() {
void **pd = reinterpret_cast<void**>(&data);
- *pd = 0;
+ return *pd;
+}
+void ThreadLocalImpl::removeInstance() {
+ setInstance(0);
}
}
#else
OpenPOWER on IntegriCloud