Pull in r215352 from upstream llvm trunk (by Tim Northover):
AArch64: add support for dynamic-loader relocations LLD needs them, and it's good to be able to print them properly when our object dumpers encounter them. Patch by Daniel Stewart. This is needed for supporting the upgrade to a newer LLDB snapshot.
This commit is contained in:
parent
5d9e9016ae
commit
b5479adaec
@ -653,6 +653,9 @@ enum {
|
||||
|
||||
R_AARCH64_LDST128_ABS_LO12_NC = 0x12b,
|
||||
|
||||
R_AARCH64_GOTREL64 = 0x133,
|
||||
R_AARCH64_GOTREL32 = 0x134,
|
||||
|
||||
R_AARCH64_ADR_GOT_PAGE = 0x137,
|
||||
R_AARCH64_LD64_GOT_LO12_NC = 0x138,
|
||||
|
||||
@ -700,7 +703,17 @@ enum {
|
||||
R_AARCH64_TLSDESC_LD64_LO12_NC = 0x233,
|
||||
R_AARCH64_TLSDESC_ADD_LO12_NC = 0x234,
|
||||
|
||||
R_AARCH64_TLSDESC_CALL = 0x239
|
||||
R_AARCH64_TLSDESC_CALL = 0x239,
|
||||
|
||||
R_AARCH64_COPY = 0x400,
|
||||
R_AARCH64_GLOB_DAT = 0x401,
|
||||
R_AARCH64_JUMP_SLOT = 0x402,
|
||||
R_AARCH64_RELATIVE = 0x403,
|
||||
R_AARCH64_TLS_DTPREL64 = 0x404,
|
||||
R_AARCH64_TLS_DTPMOD64 = 0x405,
|
||||
R_AARCH64_TLS_TPREL64 = 0x406,
|
||||
R_AARCH64_TLSDESC = 0x407,
|
||||
R_AARCH64_IRELATIVE = 0x408
|
||||
};
|
||||
|
||||
// ARM Specific e_flags
|
||||
|
@ -223,6 +223,8 @@ StringRef getELFRelocationTypeName(uint32_t Machine, uint32_t Type) {
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_LDST32_ABS_LO12_NC);
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_LDST64_ABS_LO12_NC);
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_LDST128_ABS_LO12_NC);
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_GOTREL64);
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_GOTREL32);
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_ADR_GOT_PAGE);
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_LD64_GOT_LO12_NC);
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLD_MOVW_DTPREL_G2);
|
||||
@ -266,6 +268,15 @@ StringRef getELFRelocationTypeName(uint32_t Machine, uint32_t Type) {
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSDESC_LD64_LO12_NC);
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSDESC_ADD_LO12_NC);
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSDESC_CALL);
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_COPY);
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_GLOB_DAT);
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_JUMP_SLOT);
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_RELATIVE);
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLS_DTPREL64);
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLS_DTPMOD64);
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLS_TPREL64);
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSDESC);
|
||||
LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_IRELATIVE);
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user