]> granicus.if.org Git - clang/commit
TLS: Respect visibility for thread_local variables on Darwin (PR40327)
authorVlad Tsyrklevich <vlad@tsyrklevich.net>
Thu, 17 Jan 2019 17:53:45 +0000 (17:53 +0000)
committerVlad Tsyrklevich <vlad@tsyrklevich.net>
Thu, 17 Jan 2019 17:53:45 +0000 (17:53 +0000)
commita49effd0c243838066354b9f0546b6e36dbc2f7a
tree382f2fe5b8c98090cb7dee816eabe9be1d25c215
parent03591ee3511478e575dbf3306a3982f842f1e0fd
TLS: Respect visibility for thread_local variables on Darwin (PR40327)

Summary:
Teach clang to mark thread wrappers for thread_local variables with
hidden visibility when the original variable is marked with hidden
visibility. This is necessary on Darwin which exposes the thread wrapper
instead of the thread variable. The thread wrapper would previously
always be created with default visibility unless it had
linkonce*/weak_odr linkage.

Reviewers: rjmccall

Reviewed By: rjmccall

Differential Revision: https://reviews.llvm.org/D56818

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@351457 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/ItaniumCXXABI.cpp
test/CodeGenCXX/cxx11-thread-local-visibility.cpp [new file with mode: 0644]
test/CodeGenCXX/cxx11-thread-local.cpp