This patch adds the target call back relaxTlsGdToLe to support TLS relaxation from global dynamic to local exec model.
Details
Details
Diff Detail
Diff Detail
- Repository
 - rL LLVM
 
Event Timeline
Comment Actions
| lld/ELF/Arch/PPC64.cpp | ||
|---|---|---|
| 171 ↗ | (On Diff #150951) | minor nit: Could use a ternary here instead of an if.  | 
| lld/ELF/Relocations.cpp | ||
| 936 ↗ | (On Diff #150951) | This comment should be updated to reflect that we are only skipping the non-tls hints since the tls hints need the following processing.  | 
| lld/ELF/Relocations.h | ||
| 47 ↗ | (On Diff #150951) | I think we are better off to call it R_TLSGD_HINT and add it with the other General dynamic relocation below.  | 
| lld/ELF/Arch/PPC64.cpp | ||
|---|---|---|
| 162 ↗ | (On Diff #151177) | I found this comment a bit confusing. Does this mean the first instruction is one of addis r3, r2, a@got@tlsgd@ha [R_PPC64_GOT_TLSGD16_HA] addi r3, r3, a@got@tlsgd@l [R_PPC64_GOT_TLSGD16_LO] bl __tls_get_addr(a@tlsgd) [R_PPC64_TLSGD] followed by a nop? Or, do we expect the following four instructions? addis r3, r2, a@got@tlsgd@ha [R_PPC64_GOT_TLSGD16_HA] addi r3, r3, a@got@tlsgd@l [R_PPC64_GOT_TLSGD16_LO] bl __tls_get_addr(a@tlsgd) [R_PPC64_TLSGD] nop  | 
Comment Actions
LGTM
| lld/ELF/Arch/PPC64.cpp | ||
|---|---|---|
| 187–188 ↗ | (On Diff #152941) | I believe clang-format would vertically align these comments.  |