Set TLSSupported to false on Haiku.
authorBenjamin Kramer <benny.kra@googlemail.com>
Thu, 8 Nov 2012 12:59:15 +0000 (12:59 +0000)
committerBenjamin Kramer <benny.kra@googlemail.com>
Thu, 8 Nov 2012 12:59:15 +0000 (12:59 +0000)
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

clang/lib/Basic/Targets.cpp
clang/test/Sema/tls.c

index e52013e..ed3bd0b 100644 (file)
@@ -2745,6 +2745,7 @@ public:
     IntPtrType = SignedLong;
     PtrDiffType = SignedLong;
     this->UserLabelPrefix = "";
+    this->TLSSupported = false;
   }
   virtual void getTargetDefines(const LangOptions &Opts,
                                 MacroBuilder &Builder) const {
index 3b2a441..4e5cfef 100644 (file)
@@ -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;