Lines Matching refs:rela
127 const Elf_Rela *rela; in do_copy_relocations() local
142 relalim = (const Elf_Rela *)((const char *)dstobj->rela + in do_copy_relocations()
144 for (rela = dstobj->rela; rela < relalim; rela++) { in do_copy_relocations()
145 if (ELF_R_TYPE(rela->r_info) != R_AARCH64_COPY) in do_copy_relocations()
148 dstaddr = (void *)(dstobj->relocbase + rela->r_offset); in do_copy_relocations()
149 dstsym = dstobj->symtab + ELF_R_SYM(rela->r_info); in do_copy_relocations()
154 req.ventry = fetch_ventry(dstobj, ELF_R_SYM(rela->r_info)); in do_copy_relocations()
208 reloc_tlsdesc(const Obj_Entry *obj, const Elf_Rela *rela, in reloc_tlsdesc() argument
216 if (ELF_R_SYM(rela->r_info) != 0) { in reloc_tlsdesc()
217 def = find_symdef(ELF_R_SYM(rela->r_info), obj, &defobj, flags, in reloc_tlsdesc()
226 where->addend = rela->r_addend; in reloc_tlsdesc()
230 offs += rela->r_addend; in reloc_tlsdesc()
251 const Elf_Rela *rela; in reloc_plt() local
257 for (rela = obj->pltrela; rela < relalim; rela++) { in reloc_plt()
260 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_plt()
262 switch(ELF_R_TYPE(rela->r_info)) { in reloc_plt()
266 sym = &obj->symtab[ELF_R_SYM(rela->r_info)]; in reloc_plt()
280 def = find_symdef(ELF_R_SYM(rela->r_info), obj, in reloc_plt()
299 reloc_tlsdesc(obj, rela, (struct tlsdesc_entry *)where, in reloc_plt()
309 (unsigned int)ELF_R_TYPE(rela->r_info)); in reloc_plt()
325 const Elf_Rela *rela; in reloc_jmpslots() local
333 for (rela = obj->pltrela; rela < relalim; rela++) { in reloc_jmpslots()
336 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_jmpslots()
337 switch(ELF_R_TYPE(rela->r_info)) { in reloc_jmpslots()
339 def = find_symdef(ELF_R_SYM(rela->r_info), obj, in reloc_jmpslots()
349 (const Elf_Rel *)rela); in reloc_jmpslots()
359 reloc_iresolve_one(Obj_Entry *obj, const Elf_Rela *rela, in reloc_iresolve_one() argument
364 ptr = (Elf_Addr *)(obj->relocbase + rela->r_addend); in reloc_iresolve_one()
365 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_iresolve_one()
376 const Elf_Rela *rela; in reloc_iresolve() local
383 for (rela = obj->pltrela; rela < relalim; rela++) { in reloc_iresolve()
384 if (ELF_R_TYPE(rela->r_info) == R_AARCH64_IRELATIVE) in reloc_iresolve()
385 reloc_iresolve_one(obj, rela, lockstate); in reloc_iresolve()
394 const Elf_Rela *rela; in reloc_iresolve_nonplt() local
399 relalim = (const Elf_Rela *)((const char *)obj->rela + obj->relasize); in reloc_iresolve_nonplt()
400 for (rela = obj->rela; rela < relalim; rela++) { in reloc_iresolve_nonplt()
401 if (ELF_R_TYPE(rela->r_info) == R_AARCH64_IRELATIVE) in reloc_iresolve_nonplt()
402 reloc_iresolve_one(obj, rela, lockstate); in reloc_iresolve_nonplt()
412 const Elf_Rela *rela; in reloc_gnu_ifunc() local
420 for (rela = obj->pltrela; rela < relalim; rela++) { in reloc_gnu_ifunc()
421 if (ELF_R_TYPE(rela->r_info) == R_AARCH64_JUMP_SLOT) { in reloc_gnu_ifunc()
422 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_gnu_ifunc()
423 def = find_symdef(ELF_R_SYM(rela->r_info), obj, &defobj, in reloc_gnu_ifunc()
433 (const Elf_Rel *)rela); in reloc_gnu_ifunc()
469 const Elf_Rela *rela; in reloc_non_plt() local
484 relalim = (const Elf_Rela *)((const char *)obj->rela + obj->relasize); in reloc_non_plt()
485 for (rela = obj->rela; rela < relalim; rela++) { in reloc_non_plt()
490 switch (ELF_R_TYPE(rela->r_info)) { in reloc_non_plt()
496 def = find_symdef(ELF_R_SYM(rela->r_info), obj, in reloc_non_plt()
511 switch (ELF_R_TYPE(rela->r_info)) { in reloc_non_plt()
538 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_non_plt()
540 switch (ELF_R_TYPE(rela->r_info)) { in reloc_non_plt()
543 *where = symval + rela->r_addend; in reloc_non_plt()
559 reloc_tlsdesc(obj, rela, (struct tlsdesc_entry *)where, in reloc_non_plt()
580 *where = def->st_value + rela->r_addend + in reloc_non_plt()
594 *where += (Elf_Addr)(def->st_value + rela->r_addend); in reloc_non_plt()
597 *where = (Elf_Addr)(obj->relocbase + rela->r_addend); in reloc_non_plt()
606 obj->path, ELF_R_TYPE(rela->r_info)); in reloc_non_plt()