diff options
| author | Peter Smith <peter.smith@arm.com> | 2020-04-06 22:21:39 +0100 |
|---|---|---|
| committer | Peter Smith <peter.smith@arm.com> | 2020-04-08 12:19:35 +0100 |
| commit | 02cd80e68ecf59af98e74d1b06c23b3317555933 (patch) | |
| tree | b74ed90fb4b2b6e2b7279d1e83a9c992ce8d3696 /llvm/lib/CodeGen/LiveDebugVariables.cpp | |
| parent | 916044d819c8e383fe1cd99190e3ff572d80f48f (diff) | |
| download | llvm-02cd80e68ecf59af98e74d1b06c23b3317555933.zip llvm-02cd80e68ecf59af98e74d1b06c23b3317555933.tar.gz llvm-02cd80e68ecf59af98e74d1b06c23b3317555933.tar.bz2 | |
[ELF][AArch64] Add R_AARCH64_PLT32 relocation type.
The R_AARCH64_PLT32 relocation type will be documented in the next release
of ELF for the 64-bit Arm Architecture. It is being added in draft state
for the benefit of the position independent vtable feature.
R_AARCH64_PLT32 is very similar to R_AARCH64_PREL32. The intention is to
provide a signed 32-bit integer representing an offset from the place
to a function.
- It relocates 32-bit data
- The expression is S + A - P
- The overflow check for the expression is -2^31 <= X < 2^31
- The relocation generates Thunks/Veneers/Stubs and PLT entries as per
R_AArch64_CALL26
- If the symbol S is an undefined weak the ABI does not define its value.
The ABI defines a code for ilp32 for completeness, I have added the code
but have only added to the existing reloc-types-elf-aarch64.text as there
is no ilp32 equivalent.
Differential Revision: https://reviews.llvm.org/D77647
Diffstat (limited to 'llvm/lib/CodeGen/LiveDebugVariables.cpp')
0 files changed, 0 insertions, 0 deletions
