This patch adds support for parsing and assembling the %tls_ie_pcrel_hi and %tls_gd_pcrel_hi modifiers.
Details
Diff Detail
- Repository
- rL LLVM
Event Timeline
Please also add some tests to relocations.s like I have done for %got_pcrel_hi.
lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.h | ||
---|---|---|
84 ↗ | (On Diff #177051) | This will need adding to shouldForceRelocation (along with the GD one) when you rebase. Also, is there a reason these two aren't next to each other (applies throughout the file; I'd try to keep them together and in a consistent order)? I also wonder if we should call this one fixup_riscv_tls_got_hi20 (and similarly VK_RISCV_TLS_GOT_HI) to match the relocation name like we do for all the other fixups. Otherwise, tls_ie_hi20 is neither the assembly modifier (%tls_ie_pcrel_hi) nor the relocation, but a special hybrid. |
Rebased with updated dependencies. Renamed ie_hi to got_hi to match relocation, and rearrange to be adjacent to gd_hi in most files. Added tests to relocations.s, and ensured that fixups evaluate correctly.
lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp | ||
---|---|---|
304 ↗ | (On Diff #185259) | Neither of these should be candidates since they both use the GOT. |