Author: chapuni Date: Sun Dec 20 20:37:23 2015 New Revision: 256134 URL: http://llvm.org/viewvc/llvm-project?rev=256134&view=rev Log: [Cygwin] Enable TLS as emutls.
It resolves clang selfhosting with std::once() for Cygwin. FIXME: It may be EmulatedTLS-generic also for X86-Android. FIXME: Pass EmulatedTLS to LLVM CodeGen from Clang with -femulated-tls. Modified: cfe/trunk/lib/Basic/Targets.cpp cfe/trunk/test/CXX/concepts-ts/dcl.dcl/dcl.spec/dcl.spec.concept/p2.cpp cfe/trunk/test/OpenMP/parallel_copyin_codegen.cpp cfe/trunk/test/PCH/chain-openmp-threadprivate.cpp Modified: cfe/trunk/lib/Basic/Targets.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/Targets.cpp?rev=256134&r1=256133&r2=256134&view=diff ============================================================================== --- cfe/trunk/lib/Basic/Targets.cpp (original) +++ cfe/trunk/lib/Basic/Targets.cpp Sun Dec 20 20:37:23 2015 @@ -3834,7 +3834,6 @@ class CygwinX86_32TargetInfo : public X8 public: CygwinX86_32TargetInfo(const llvm::Triple &Triple) : X86_32TargetInfo(Triple) { - TLSSupported = false; WCharType = UnsignedShort; DoubleAlign = LongLongAlign = 64; DataLayoutString = "e-m:x-p:32:32-i64:64-f80:32-n8:16:32-a:0:32-S32"; Modified: cfe/trunk/test/CXX/concepts-ts/dcl.dcl/dcl.spec/dcl.spec.concept/p2.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CXX/concepts-ts/dcl.dcl/dcl.spec/dcl.spec.concept/p2.cpp?rev=256134&r1=256133&r2=256134&view=diff ============================================================================== --- cfe/trunk/test/CXX/concepts-ts/dcl.dcl/dcl.spec/dcl.spec.concept/p2.cpp (original) +++ cfe/trunk/test/CXX/concepts-ts/dcl.dcl/dcl.spec/dcl.spec.concept/p2.cpp Sun Dec 20 20:37:23 2015 @@ -1,5 +1,4 @@ // RUN: %clang_cc1 -std=c++14 -fconcepts-ts -x c++ -verify %s -// REQUIRES: tls template<typename T> concept thread_local bool VCTL = true; // expected-error {{variable concept cannot be declared 'thread_local'}} Modified: cfe/trunk/test/OpenMP/parallel_copyin_codegen.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/OpenMP/parallel_copyin_codegen.cpp?rev=256134&r1=256133&r2=256134&view=diff ============================================================================== --- cfe/trunk/test/OpenMP/parallel_copyin_codegen.cpp (original) +++ cfe/trunk/test/OpenMP/parallel_copyin_codegen.cpp Sun Dec 20 20:37:23 2015 @@ -11,7 +11,6 @@ // RUN: %clang_cc1 -verify -fopenmp -x c++ -std=c++11 -DLAMBDA -triple %itanium_abi_triple -emit-llvm %s -o - | FileCheck -check-prefix=TLS-LAMBDA %s // RUN: %clang_cc1 -verify -fopenmp -x c++ -fblocks -DBLOCKS -triple %itanium_abi_triple -emit-llvm %s -o - | FileCheck -check-prefix=TLS-BLOCKS %s // RUN: %clang_cc1 -verify -fopenmp -x c++ -std=c++11 -DARRAY -triple x86_64-linux-gnu -emit-llvm %s -o - | FileCheck -check-prefix=TLS-ARRAY %s -// REQUIRES: tls // expected-no-diagnostics #ifndef ARRAY #ifndef HEADER Modified: cfe/trunk/test/PCH/chain-openmp-threadprivate.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/PCH/chain-openmp-threadprivate.cpp?rev=256134&r1=256133&r2=256134&view=diff ============================================================================== --- cfe/trunk/test/PCH/chain-openmp-threadprivate.cpp (original) +++ cfe/trunk/test/PCH/chain-openmp-threadprivate.cpp Sun Dec 20 20:37:23 2015 @@ -9,8 +9,6 @@ // RUN: %clang_cc1 -fopenmp -emit-llvm -chain-include %s -chain-include %s %s -o - | FileCheck %s -check-prefix=CHECK-TLS-1 // RUN: %clang_cc1 -fopenmp -emit-llvm -chain-include %s -chain-include %s %s -o - | FileCheck %s -check-prefix=CHECK-TLS-2 -// REQUIRES: tls - #if !defined(PASS1) #define PASS1 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits