summaryrefslogtreecommitdiffstats
path: root/clang
diff options
context:
space:
mode:
authorBenjamin Kramer <benny.kra@googlemail.com>2012-11-08 12:59:15 +0000
committerBenjamin Kramer <benny.kra@googlemail.com>2012-11-08 12:59:15 +0000
commitd0b9f090fbca709e73d631c7c4cd06f0f3bb0e0d (patch)
tree4359ed93ef3ac909f56132f63c1aff5bf2181647 /clang
parent9952b674caf57e6cd13cefc30f827107de2a0a06 (diff)
downloadbcm5719-llvm-d0b9f090fbca709e73d631c7c4cd06f0f3bb0e0d.tar.gz
bcm5719-llvm-d0b9f090fbca709e73d631c7c4cd06f0f3bb0e0d.zip
Set TLSSupported to false on Haiku.
Haiku does not support this (yet). Leaving it set to true leads to configure scripts detecting __thread being available and Clang emitting code for it, resulting in binaries the runtime_loader will refuse to load. Patch by Jonathan Schleifer! llvm-svn: 167576
Diffstat (limited to 'clang')
-rw-r--r--clang/lib/Basic/Targets.cpp1
-rw-r--r--clang/test/Sema/tls.c3
2 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp
index e52013ef0f3..ed3bd0be49b 100644
--- a/clang/lib/Basic/Targets.cpp
+++ b/clang/lib/Basic/Targets.cpp
@@ -2745,6 +2745,7 @@ public:
IntPtrType = SignedLong;
PtrDiffType = SignedLong;
this->UserLabelPrefix = "";
+ this->TLSSupported = false;
}
virtual void getTargetDefines(const LangOptions &Opts,
MacroBuilder &Builder) const {
diff --git a/clang/test/Sema/tls.c b/clang/test/Sema/tls.c
index 3b2a441bfea..4e5cfef0a3f 100644
--- a/clang/test/Sema/tls.c
+++ b/clang/test/Sema/tls.c
@@ -17,4 +17,7 @@
// RUN: not %clang_cc1 -triple x86_64-pc-openbsd -fsyntax-only %s
// RUN: not %clang_cc1 -triple i386-pc-openbsd -fsyntax-only %s
+// Haiku does not suppport TLS.
+// RUN: not %clang_cc1 -triple i586-pc-haiku -fsyntax-only %s
+
__thread int x;
OpenPOWER on IntegriCloud