[PATCH] D46255: [ELF][AArch64] Implement the AArch64 TLSLD_LDST_LO12 family of relocs

Peter Smith via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 30 02:34:42 PDT 2018


peter.smith created this revision.
peter.smith added reviewers: ruiu, espindola.
Herald added subscribers: kristof.beyls, arichardson, emaste, rengolin.
Herald added a reviewer: javed.absar.

Implement the following relocations for AArch64:
R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC
R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC
R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC
R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC
R_AARCH64_TLSLE_LDST128_TPREL_LO12_NC

      

These are specified in ELF for the 64-bit Arm Architecture (http://infocenter.arm.com/help/topic/com.arm.doc.ihi0056b/IHI0056B_aaelf64.pdf)

These relocation directives were first used in an optimisation in https://reviews.llvm.org/D44355 . This had to be reverted as no linker (gold, ld.bfd or lld) implemented these relocations. Both gold and ld.bfd have since implemented support (https://sourceware.org/bugzilla/show_bug.cgi?id=22969 and https://sourceware.org/bugzilla/show_bug.cgi?id=22970 ) so it would be good to have LLD support as well.

Fixes pr36727


https://reviews.llvm.org/D46255

Files:
  ELF/Arch/AArch64.cpp
  test/ELF/aarch64-tlsld-ldst.s

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D46255.144514.patch
Type: text/x-patch
Size: 5064 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180430/b57df167/attachment.bin>


More information about the llvm-commits mailing list