Lines Matching defs:rela
184 const Elf_Rela *relafirst, *rela, *relalim;
227 for (rela = relafirst; rela < relalim; rela++) {
228 symnum = ELF_R_SYM(rela->r_info);
229 where = (void *)(relocbase + rela->r_offset);
231 switch (ELF_R_TYPE(rela->r_info)) {
235 relocbase + rela->r_addend);
239 relocbase + rela->r_addend + sym->st_value);
257 relocbase + rela->r_addend;
259 plabel_relocs[nplabel_relocs++] = rela;
269 rela = plabel_relocs[i];
270 where = (void *)(relocbase + rela->r_offset);
271 sym = symtab + ELF_R_SYM(rela->r_info);
276 (relocbase + sym->st_value + rela->r_addend);
284 for (rela = relafirst; rela < relalim; rela++) {
285 where = (void *)(relocbase + rela->r_offset);
287 switch (ELF_R_TYPE(rela->r_info)) {
289 hdbg(("DIR32 rela @%p(%p) -> %p(%p)\n",
290 (void *)rela->r_offset,
292 (void *)rela->r_addend,
297 symnum = ELF_R_SYM(rela->r_info);
299 hdbg(("PLABEL rela @%p(%p) -> %p(%p)\n",
300 (void *)rela->r_offset,
302 (void *)rela->r_addend,
307 hdbg(("PLABEL32 rela @%p(%p), symnum=%ld(%p) -> %p(%p)\n",
308 (void *)rela->r_offset,
312 (void *)rela->r_addend,
317 hdbg(("rela XXX reloc\n"));
433 const Elf_Rela *rela;
448 for (rela = obj->rela; rela < obj->relalim; rela++) {
452 where = (Elf_Addr *)(obj->relocbase + rela->r_offset);
454 unsigned long symnum = ELF_R_SYM(rela->r_info);
457 switch (ELF_R_TYPE(rela->r_info)) {
462 rela->r_addend);
488 (obj->relocbase + rela->r_addend);
498 switch (ELF_R_TYPE(rela->r_info)) {
507 if (ELF_R_TYPE(rela->r_info) == R_TYPE(DIR32)) {
527 switch (ELF_R_TYPE(rela->r_info)) {
533 def->st_value + rela->r_addend);
545 def, rela->r_addend);
578 rela->r_addend + sizeof(struct tls_tcb));
606 symnum, (u_long)ELF_R_TYPE(rela->r_info),
607 (void *)rela->r_offset, (void *)rela->r_addend,
612 obj->path, (u_long) ELF_R_TYPE(rela->r_info));
622 const Elf_Rela *rela;
624 for (rela = obj->pltrela; rela < obj->pltrelalim; rela++) {
625 Elf_Addr *where = (Elf_Addr *)(obj->relocbase + rela->r_offset);
629 if (ELF_R_TYPE(rela->r_info) == R_TYPE(NONE))
632 assert(ELF_R_TYPE(rela->r_info) == R_TYPE(IPLT));
638 if (ELF_R_SYM(rela->r_info) == 0) {
639 func_pc = (Elf_Addr)(obj->relocbase + rela->r_addend);
657 ((const char *)rela - (const char *)(obj->pltrela));
675 _rtld_relocate_plt_object(const Obj_Entry *obj, const Elf_Rela *rela,
678 Elf_Word *where = (Elf_Word *)(obj->relocbase + rela->r_offset);
682 unsigned long info = rela->r_info;
687 func_pc = (Elf_Addr)(obj->relocbase + rela->r_addend);
707 rela->r_addend);
733 const Elf_Rela *rela;
737 rela = (const Elf_Rela *)((const char *)obj->pltrela + reloff);
739 assert(ELF_R_SYM(rela->r_info) != 0);
742 err = _rtld_relocate_plt_object(obj, rela, &new_value);
753 const Elf_Rela *rela = obj->pltrela;
755 for (; rela < obj->pltrelalim; rela++) {
756 if (_rtld_relocate_plt_object(obj, rela, NULL) < 0)