[PATCH] D63076: [ELF][RISCV] Support PLT, GOT, copy and relative relocations
Fangrui Song via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jun 10 06:36:24 PDT 2019
MaskRay created this revision.
MaskRay added reviewers: PkmX, ruiu.
Herald added subscribers: llvm-commits, Jim, benna, psnobl, jocewei, rkruppe, the_o, brucehoult, MartinMosbeck, rogfer01, edward-jones, zzheng, jrtc27, shiva0217, kito-cheng, niosHD, sabuasal, apazos, simoncook, johnrusso, rbar, asb, arichardson, emaste.
Herald added a reviewer: espindola.
Herald added a project: LLVM.
- Handle initial relocation types R_RISCV_32, R_RISCV_64, R_RISCV_CALL_PLT and R_RISCV_GOT_HI20.
- Produce dynamic relocation types: R_RISCV_COPY, R_RISCV_RELATIVE, R_RISCV_JUMP_SLOT, and R_RISCV_{32,64}.
- Generate PLT header: it is used by glibc lazy binding PLT.
Simple -no-pie -fno-pie programs linked against musl or glibc should
work with this patch.
Repository:
rLLD LLVM Linker
https://reviews.llvm.org/D63076
Files:
ELF/Arch/RISCV.cpp
ELF/InputSection.cpp
test/ELF/riscv-plt.s
test/ELF/riscv-reloc-64-pic.s
test/ELF/riscv-reloc-copy.s
test/ELF/riscv-reloc-got.s
test/ELF/riscv32-reloc-32-pic.s
test/ELF/riscv64-reloc-64-pic.s
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D63076.203813.patch
Type: text/x-patch
Size: 13710 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190610/418f3ce9/attachment.bin>
More information about the llvm-commits
mailing list