/freebsd/libexec/rtld-elf/riscv/ |
H A D | reloc.c | 86 const Obj_Entry *srcobj, *defobj; in do_copy_relocations() local 123 defobj = req.defobj_out; in do_copy_relocations() 134 srcaddr = (const void *)(defobj->relocbase + srcsym->st_value); in do_copy_relocations() 180 const Obj_Entry *defobj; in reloc_jmpslots() local 194 &defobj, SYMLOOK_IN_PLT | flags, NULL, lockstate); in reloc_jmpslots() 205 *where = (Elf_Addr)(defobj->relocbase + def->st_value); in reloc_jmpslots() 276 const Obj_Entry *defobj; in reloc_gnu_ifunc() local 285 def = find_symdef(ELF_R_SYM(rela->r_info), obj, &defobj, in reloc_gnu_ifunc() 293 target = (Elf_Addr)rtld_resolve_ifunc(defobj, def); in reloc_gnu_ifunc() 295 reloc_jmpslot(where, target, defobj, obj, in reloc_gnu_ifunc() [all …]
|
H A D | rtld_machdep.h | 64 const struct Struct_Obj_Entry *defobj, const struct Struct_Obj_Entry *obj, 67 #define make_function_pointer(def, defobj) \ argument 68 ((defobj)->relocbase + (def)->st_value)
|
/freebsd/libexec/rtld-elf/aarch64/ |
H A D | reloc.c | 125 const Obj_Entry *srcobj, *defobj; in do_copy_relocations() local 162 defobj = req.defobj_out; in do_copy_relocations() 172 srcaddr = (const void *)(defobj->relocbase + srcsym->st_value); in do_copy_relocations() 212 const Obj_Entry *defobj; in reloc_tlsdesc() local 217 def = find_symdef(ELF_R_SYM(rela->r_info), obj, &defobj, flags, in reloc_tlsdesc() 222 obj = defobj; in reloc_tlsdesc() 249 const Obj_Entry *defobj; in reloc_plt() local 281 &defobj, SYMLOOK_IN_PLT | flags, NULL, in reloc_plt() 289 target = (Elf_Addr)(defobj->relocbase + in reloc_plt() 323 const Obj_Entry *defobj; in reloc_jmpslots() local [all …]
|
/freebsd/libexec/rtld-elf/amd64/ |
H A D | reloc.c | 81 const Obj_Entry *srcobj, *defobj; in do_copy_relocations() local 99 defobj = req.defobj_out; in do_copy_relocations() 111 srcaddr = (const void *)(defobj->relocbase + in do_copy_relocations() 139 const Obj_Entry *defobj; in reloc_non_plt() local 173 def = find_symdef(ELF_R_SYM(rela->r_info), obj, &defobj, in reloc_non_plt() 198 defobj, def); in reloc_non_plt() 212 symval = (Elf_Addr)defobj->relocbase + in reloc_non_plt() 267 if (!defobj->tls_static) { in reloc_non_plt() 269 defobj))) { in reloc_non_plt() 276 *where = (Elf_Addr)(def->st_value - defobj->tlsoffset + in reloc_non_plt() [all …]
|
/freebsd/libexec/rtld-elf/arm/ |
H A D | reloc.c | 45 const Obj_Entry *srcobj, *defobj; in do_copy_relocations() local 64 defobj = req.defobj_out; in do_copy_relocations() 75 srcaddr = (const void *)(defobj->relocbase + in do_copy_relocations() 140 const Obj_Entry *defobj; in reloc_nonplt_object() local 162 def = find_symdef(symnum, obj, &defobj, flags, cache, in reloc_nonplt_object() 182 obj->path, (void *)*where, where, defobj->path); in reloc_nonplt_object() 189 def = find_symdef(symnum, obj, &defobj, flags, cache, in reloc_nonplt_object() 194 tmp = *where + (Elf_Addr)defobj->relocbase + in reloc_nonplt_object() 199 (Elf_Addr)defobj->relocbase + in reloc_nonplt_object() 205 obj->path, (void *)tmp, where, defobj->path); in reloc_nonplt_object() [all …]
|
/freebsd/libexec/rtld-elf/powerpc64/ |
H A D | reloc.c | 89 const Obj_Entry *srcobj, *defobj; in do_copy_relocations() local 110 defobj = req.defobj_out; in do_copy_relocations() 122 srcaddr = (const void *)(defobj->relocbase+srcsym->st_value); in do_copy_relocations() 174 const Obj_Entry *defobj; in reloc_nonplt_object() local 189 def = find_symdef(ELF_R_SYM(rela->r_info), obj, &defobj, in reloc_nonplt_object() 215 defobj, def); in reloc_nonplt_object() 225 symval = (Elf_Addr)defobj->relocbase + in reloc_nonplt_object() 248 *where = (Elf_Addr) defobj->tlsindex; in reloc_nonplt_object() 259 if (!defobj->tls_static) { in reloc_nonplt_object() 261 __DECONST(Obj_Entry *, defobj))) { in reloc_nonplt_object() [all …]
|
/freebsd/libexec/rtld-elf/i386/ |
H A D | reloc.c | 78 const Obj_Entry *srcobj, *defobj; in do_copy_relocations() local 96 defobj = req.defobj_out; in do_copy_relocations() 109 srcaddr = (const void *)(defobj->relocbase + in do_copy_relocations() 137 const Obj_Entry *defobj; in reloc_non_plt() local 167 def = find_symdef(ELF_R_SYM(rel->r_info), obj, &defobj, in reloc_non_plt() 181 rtld_resolve_ifunc(defobj, def); in reloc_non_plt() 194 symval = (Elf_Addr)defobj->relocbase + in reloc_non_plt() 250 if (!defobj->tls_static) { in reloc_non_plt() 252 __DECONST(Obj_Entry *, defobj))) { in reloc_non_plt() 259 add = (Elf_Addr)(def->st_value - defobj->tlsoffset); in reloc_non_plt() [all …]
|
/freebsd/libexec/rtld-elf/powerpc/ |
H A D | reloc.c | 94 const Obj_Entry *srcobj, *defobj; in do_copy_relocations() local 115 defobj = req.defobj_out; in do_copy_relocations() 127 srcaddr = (const void *)(defobj->relocbase+srcsym->st_value); in do_copy_relocations() 179 const Obj_Entry *defobj; in reloc_nonplt_object() local 194 def = find_symdef(ELF_R_SYM(rela->r_info), obj, &defobj, in reloc_nonplt_object() 221 defobj, def); in reloc_nonplt_object() 231 symval = (Elf_Addr)defobj->relocbase + in reloc_nonplt_object() 253 *where = (Elf_Addr) defobj->tlsindex; in reloc_nonplt_object() 264 if (!defobj->tls_static) { in reloc_nonplt_object() 266 __DECONST(Obj_Entry *, defobj))) { in reloc_nonplt_object() [all …]
|
/freebsd/libexec/rtld-elf/ |
H A D | rtld.c | 1038 const Obj_Entry *defobj; in _rtld_bind() local 1052 def = find_symdef(ELF_R_SYM(rel->r_info), obj, &defobj, SYMLOOK_IN_PLT, in _rtld_bind() 1057 target = (Elf_Addr)rtld_resolve_ifunc(defobj, def); in _rtld_bind() 1059 target = (Elf_Addr)(defobj->relocbase + def->st_value); in _rtld_bind() 1061 dbg("\"%s\" in \"%s\" ==> %p in \"%s\"", defobj->strtab + def->st_name, in _rtld_bind() 1063 defobj->path == NULL ? NULL : basename(defobj->path)); in _rtld_bind() 1072 target = reloc_jmpslot(where, target, defobj, obj, rel); in _rtld_bind() 1988 const Obj_Entry *defobj; in find_symdef() local 2008 defobj = NULL; in find_symdef() 2031 defobj = req.defobj_out; in find_symdef() [all …]
|