Lines Matching refs:rela

70 	const Elf_Rela *rela;  in do_copy_relocations()  local
85 relalim = (const Elf_Rela *)((const char *)dstobj->rela + in do_copy_relocations()
87 for (rela = dstobj->rela; rela < relalim; rela++) { in do_copy_relocations()
88 if (ELF_R_TYPE(rela->r_info) != R_AARCH64_COPY) in do_copy_relocations()
91 dstaddr = (void *)(dstobj->relocbase + rela->r_offset); in do_copy_relocations()
92 dstsym = dstobj->symtab + ELF_R_SYM(rela->r_info); in do_copy_relocations()
97 req.ventry = fetch_ventry(dstobj, ELF_R_SYM(rela->r_info)); in do_copy_relocations()
142 reloc_tlsdesc(const Obj_Entry *obj, const Elf_Rela *rela, Elf_Addr *where, in reloc_tlsdesc() argument
151 if (ELF_R_SYM(rela->r_info) != 0) { in reloc_tlsdesc()
152 def = find_symdef(ELF_R_SYM(rela->r_info), obj, &defobj, flags, in reloc_tlsdesc()
161 where[1] = rela->r_addend; in reloc_tlsdesc()
165 offs += rela->r_addend; in reloc_tlsdesc()
185 const Elf_Rela *rela; in reloc_plt() local
189 for (rela = obj->pltrela; rela < relalim; rela++) { in reloc_plt()
192 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_plt()
194 switch(ELF_R_TYPE(rela->r_info)) { in reloc_plt()
199 reloc_tlsdesc(obj, rela, where, SYMLOOK_IN_PLT | flags, in reloc_plt()
209 (unsigned int)ELF_R_TYPE(rela->r_info)); in reloc_plt()
225 const Elf_Rela *rela; in reloc_jmpslots() local
233 for (rela = obj->pltrela; rela < relalim; rela++) { in reloc_jmpslots()
236 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_jmpslots()
237 switch(ELF_R_TYPE(rela->r_info)) { in reloc_jmpslots()
239 def = find_symdef(ELF_R_SYM(rela->r_info), obj, in reloc_jmpslots()
249 (const Elf_Rel *)rela); in reloc_jmpslots()
259 reloc_iresolve_one(Obj_Entry *obj, const Elf_Rela *rela, in reloc_iresolve_one() argument
264 ptr = (Elf_Addr *)(obj->relocbase + rela->r_addend); in reloc_iresolve_one()
265 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_iresolve_one()
276 const Elf_Rela *rela; in reloc_iresolve() local
283 for (rela = obj->pltrela; rela < relalim; rela++) { in reloc_iresolve()
284 if (ELF_R_TYPE(rela->r_info) == R_AARCH64_IRELATIVE) in reloc_iresolve()
285 reloc_iresolve_one(obj, rela, lockstate); in reloc_iresolve()
294 const Elf_Rela *rela; in reloc_iresolve_nonplt() local
299 relalim = (const Elf_Rela *)((const char *)obj->rela + obj->relasize); in reloc_iresolve_nonplt()
300 for (rela = obj->rela; rela < relalim; rela++) { in reloc_iresolve_nonplt()
301 if (ELF_R_TYPE(rela->r_info) == R_AARCH64_IRELATIVE) in reloc_iresolve_nonplt()
302 reloc_iresolve_one(obj, rela, lockstate); in reloc_iresolve_nonplt()
312 const Elf_Rela *rela; in reloc_gnu_ifunc() local
320 for (rela = obj->pltrela; rela < relalim; rela++) { in reloc_gnu_ifunc()
321 if (ELF_R_TYPE(rela->r_info) == R_AARCH64_JUMP_SLOT) { in reloc_gnu_ifunc()
322 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_gnu_ifunc()
323 def = find_symdef(ELF_R_SYM(rela->r_info), obj, &defobj, in reloc_gnu_ifunc()
333 (const Elf_Rel *)rela); in reloc_gnu_ifunc()
369 const Elf_Rela *rela; in reloc_non_plt() local
384 relalim = (const Elf_Rela *)((const char *)obj->rela + obj->relasize); in reloc_non_plt()
385 for (rela = obj->rela; rela < relalim; rela++) { in reloc_non_plt()
390 switch (ELF_R_TYPE(rela->r_info)) { in reloc_non_plt()
396 def = find_symdef(ELF_R_SYM(rela->r_info), obj, in reloc_non_plt()
411 switch (ELF_R_TYPE(rela->r_info)) { in reloc_non_plt()
438 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_non_plt()
440 switch (ELF_R_TYPE(rela->r_info)) { in reloc_non_plt()
443 *where = symval + rela->r_addend; in reloc_non_plt()
459 reloc_tlsdesc(obj, rela, where, flags, lockstate); in reloc_non_plt()
479 *where = def->st_value + rela->r_addend + in reloc_non_plt()
493 *where += (Elf_Addr)(def->st_value + rela->r_addend); in reloc_non_plt()
496 *where = (Elf_Addr)(obj->relocbase + rela->r_addend); in reloc_non_plt()
505 obj->path, ELF_R_TYPE(rela->r_info)); in reloc_non_plt()