Merge "x86_64: Add R_X86_64_64 relocation handling"
This commit is contained in:
commit
41b87c6512
1 changed files with 8 additions and 0 deletions
|
@ -947,6 +947,14 @@ static int soinfo_relocate_a(soinfo* si, Elf_Rela* rela, unsigned count, soinfo*
|
||||||
*reinterpret_cast<Elf_Addr*>(reloc) = sym_addr + rela->r_addend;
|
*reinterpret_cast<Elf_Addr*>(reloc) = sym_addr + rela->r_addend;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case R_X86_64_64:
|
||||||
|
count_relocation(kRelocRelative);
|
||||||
|
MARK(rela->r_offset);
|
||||||
|
TRACE_TYPE(RELO, "RELO R_X86_64_64 %08zx <- +%08zx %s", static_cast<size_t>(reloc),
|
||||||
|
static_cast<size_t>(sym_addr), sym_name);
|
||||||
|
*reinterpret_cast<Elf_Addr*>(reloc) = sym_addr + rela->r_addend;
|
||||||
|
break;
|
||||||
|
|
||||||
case R_X86_64_PC32:
|
case R_X86_64_PC32:
|
||||||
count_relocation(kRelocRelative);
|
count_relocation(kRelocRelative);
|
||||||
MARK(rela->r_offset);
|
MARK(rela->r_offset);
|
||||||
|
|
Loading…
Reference in a new issue