aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
diff options
context:
space:
mode:
authorJames Y Knight <jyknight@google.com>2020-05-27 09:55:29 -0400
committerJames Y Knight <jyknight@google.com>2020-05-27 11:59:30 -0400
commitaca3d067efe194539efd1e0fcf03820a2c377753 (patch)
tree669b87babb26aa9749360fadb256b50262a26586 /llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
parent6022efb0e9cbb350f7b690acd0cfa4b87b1dfe87 (diff)
downloadllvm-aca3d067efe194539efd1e0fcf03820a2c377753.zip
llvm-aca3d067efe194539efd1e0fcf03820a2c377753.tar.gz
llvm-aca3d067efe194539efd1e0fcf03820a2c377753.tar.bz2
Fix Darwin 'constinit thread_local' variables.
Unlike other platforms using ItaniumCXXABI, Darwin does not allow the creation of a thread-wrapper function for a variable in the TU of users. Because of this, it can set the linkage of the thread-local symbol to internal, with the assumption that no TUs other than the one defining the variable will need it. However, constinit thread_local variables do not require the use of the thread-wrapper call, so users reference the variable directly. Thus, it must not be converted to internal, or users will get a link failure. This was a regression introduced by the optimization in 00223827a952f66e7426c9881a2a4229e59bb019. Differential Revision: https://reviews.llvm.org/D80417
Diffstat (limited to 'llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp')
0 files changed, 0 insertions, 0 deletions