Home | History | Annotate | Download | only in ld.elf_so

Lines Matching defs:rela

66 _rtld_do_copy_relocation(const Obj_Entry *dstobj, const Elf_Rela *rela)
68 void *dstaddr = (void *)(dstobj->relocbase + rela->r_offset);
69 const Elf_Sym *dstsym = dstobj->symtab + ELF_R_SYM(rela->r_info);
98 _rtld_fetch_ventry(dstobj, ELF_R_SYM(rela->r_info)));
147 if (dstobj->rela != NULL) {
148 const Elf_Rela *rela;
149 for (rela = dstobj->rela; rela < dstobj->relalim; ++rela) {
150 if (ELF_R_TYPE(rela->r_info) == R_TYPE(COPY)) {
151 if (_rtld_do_copy_relocation(dstobj, rela) < 0)
279 rdbg((" relocating %s (%ld/%ld rel/rela, %ld/%ld plt rel/rela)",
282 (long)(obj->relalim - obj->rela),
375 const Elf_Rela *rela;
383 rela = obj->pltrelalim - obj->ifunc_remaining--;
389 if (ELF_R_TYPE(rela->r_info) != PLT_IRELATIVE)
392 where2 = (Elf_Word *)(obj->relocbase + rela->r_offset);
394 where = (Elf_Addr *)(obj->relocbase + rela->r_offset);
396 target = (Elf_Addr)(obj->relocbase + rela->r_addend);
409 rela = obj->relalim - obj->ifunc_remaining_nonplt--;
410 if (ELF_R_TYPE(rela->r_info) != R_TYPE(IRELATIVE))
412 where = (Elf_Addr *)(obj->relocbase + rela->r_offset);
413 target = (Elf_Addr)(obj->relocbase + rela->r_addend);