[PATCH] D57673: [PPC64] Set the number of relocations processed for R_PPC64_TLS[GL]D to 2

Fangrui Song via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 4 02:08:50 PST 2019


MaskRay created this revision.
MaskRay added reviewers: ruiu, sfertile, syzaara.
Herald added subscribers: llvm-commits, jsji, kbarton, arichardson, nemanjai, emaste.
Herald added a reviewer: espindola.
Herald added a project: LLVM.

R_PPC64_TLSGD and R_PPC64_TLSLD are used as markers on TLS code sequences. For GD-to-IE and GD-to-LE relaxations, the next relocation R_PPC64_REL24 should be skipped to avoid "undefined symbol" (__tls_get_addr) error when linking statically.

R_PPC64_GOT_TLSGD16_HA
R_PPC64_GOT_TLSGD16_LO
R_PPC64_TLSGD R_TLSDESC_CALL
R_PPC64_REL24 __tls_get_addr


Repository:
  rLLD LLVM Linker

https://reviews.llvm.org/D57673

Files:
  ELF/Arch/PPC64.cpp
  ELF/Arch/X86.cpp
  ELF/Arch/X86_64.cpp
  ELF/Relocations.cpp
  ELF/Target.h
  test/ELF/ppc64-gd-to-ie.s
  test/ELF/ppc64-tls-gd-le.s

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D57673.185011.patch
Type: text/x-patch
Size: 5748 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190204/57668e62/attachment.bin>


More information about the llvm-commits mailing list