summaryrefslogtreecommitdiffstats
path: root/llvm/lib/MC/MCObjectFileInfo.cpp
diff options
context:
space:
mode:
authorTim Northover <tnorthover@apple.com>2016-04-25 21:12:04 +0000
committerTim Northover <tnorthover@apple.com>2016-04-25 21:12:04 +0000
commit5c3140f7458a980af71d9fcea30ee688c7df2831 (patch)
tree3f427246ec2bbc470e28c7be8a54f9f9b50cd812 /llvm/lib/MC/MCObjectFileInfo.cpp
parent8407f5b3bdc129a795df6b58a03e917a69eb4094 (diff)
downloadbcm5719-llvm-5c3140f7458a980af71d9fcea30ee688c7df2831.tar.gz
bcm5719-llvm-5c3140f7458a980af71d9fcea30ee688c7df2831.zip
ARM: put extern __thread stubs in a special section.
The linker needs to know that the symbols are thread-local to do its job properly. llvm-svn: 267473
Diffstat (limited to 'llvm/lib/MC/MCObjectFileInfo.cpp')
-rw-r--r--llvm/lib/MC/MCObjectFileInfo.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/MC/MCObjectFileInfo.cpp b/llvm/lib/MC/MCObjectFileInfo.cpp
index b270f00ce64..ee69d08dddd 100644
--- a/llvm/lib/MC/MCObjectFileInfo.cpp
+++ b/llvm/lib/MC/MCObjectFileInfo.cpp
@@ -172,6 +172,11 @@ void MCObjectFileInfo::initMachOMCObjectFileInfo(Triple T) {
MachO::S_NON_LAZY_SYMBOL_POINTERS,
SectionKind::getMetadata());
+ ThreadLocalPointerSection
+ = Ctx->getMachOSection("__DATA", "__thread_ptr",
+ MachO::S_THREAD_LOCAL_VARIABLE_POINTERS,
+ SectionKind::getMetadata());
+
if (RelocM == Reloc::Static) {
StaticCtorSection = Ctx->getMachOSection("__TEXT", "__constructor", 0,
SectionKind::getData());
OpenPOWER on IntegriCloud