summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Object/MachOObjectFile.cpp
diff options
context:
space:
mode:
authorAdhemerval Zanella <azanella@linux.vnet.ibm.com>2015-06-03 21:44:03 +0000
committerAdhemerval Zanella <azanella@linux.vnet.ibm.com>2015-06-03 21:44:03 +0000
commit9f0c63bfdfe849095ff8c673f7b6bdb993144fa5 (patch)
tree9706f86935509d2c500fb227bf62e4fcf8d6195e /llvm/lib/Object/MachOObjectFile.cpp
parent8c52a9b0f611e4daa09c00e0da15b44b9528dbe5 (diff)
downloadbcm5719-llvm-9f0c63bfdfe849095ff8c673f7b6bdb993144fa5.tar.gz
bcm5719-llvm-9f0c63bfdfe849095ff8c673f7b6bdb993144fa5.zip
[ELF/AArch64] Fix TLS initial executable relocation
This patch fixes the TLS initial executable for AArch64. Current implementation have two issues: 1. does not generate dynamic R_AARCH64_TLS_TPREL64 relocation for the external module symbols, and 2. does not export the TLS initial executable symbol in dynamic symbol table. The fix follows the MIPS strategy to add a arch-specific GOTSection class to keep track of TLS symbols required to be place in dynamic symbol table. It also overrides the buildDynamicSymbolTable for ExecutableWrite class to add the symbols. It also adds some refactoring on AArch64RelocationPass.cpp based on ARM backend. llvm-svn: 238981
Diffstat (limited to 'llvm/lib/Object/MachOObjectFile.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud