| /netbsd-src/libexec/ld.elf_so/ |
| H A D | symbol.c | 91 const Obj_Entry *defobj; in _rtld_symlook_list() local 95 defobj = NULL; in _rtld_symlook_list() 106 defobj = elm->obj; in _rtld_symlook_list() 113 *defobj_out = defobj; in _rtld_symlook_list() 129 const Obj_Entry *obj, *defobj, *defobj1; in _rtld_symlook_needed() local 132 defobj = NULL; in _rtld_symlook_needed() 141 defobj = obj; in _rtld_symlook_needed() 143 *defobj_out = defobj; in _rtld_symlook_needed() 163 defobj = defobj1; in _rtld_symlook_needed() 169 *defobj_out = defobj; in _rtld_symlook_needed() [all …]
|
| H A D | rtld.c | 1166 const Obj_Entry *defobj; in do_dlsym() local 1178 defobj = NULL; in do_dlsym() 1194 defobj = obj; in do_dlsym() 1205 defobj = obj; in do_dlsym() 1220 defobj = &_rtld_objself; in do_dlsym() 1226 def = _rtld_symlook_default(name, &hash, obj, &defobj, in do_dlsym() 1246 &defobj, flags, ventry, &donelist); in do_dlsym() 1257 def = _rtld_symlook_needed(name, &hash, &fake, &defobj, in do_dlsym() 1272 p = (void *)_rtld_resolve_ifunc(defobj, def); in do_dlsym() 1279 p = (void *)_rtld_function_descriptor_alloc(defobj, in do_dlsym() [all …]
|
| H A D | README.TLS | 146 (defobj->tls_static) and otherwise call _rtld_tls_offset_allocate(). This 153 def->st_value + rela->r_addend + defobj->tlsoffset + sizeof(struct tls_tcb) 159 def->st_value - defobj->tlsoffset + rela->r_addend
|
| /netbsd-src/libexec/ld.elf_so/arch/m68k/ |
| H A D | mdreloc.c | 58 const Obj_Entry *defobj = NULL; in _rtld_relocate_nonplt_objects() 79 def = _rtld_find_symdef(symnum, obj, &defobj, in _rtld_relocate_nonplt_objects() 95 tmp = (Elf_Addr)(defobj->relocbase + def->st_value + in _rtld_relocate_nonplt_objects() 101 obj->path, (void *)*where, defobj->path)); in _rtld_relocate_nonplt_objects() 108 tmp = (Elf_Addr)(defobj->relocbase + def->st_value + in _rtld_relocate_nonplt_objects() 114 obj->path, (void *)*where, defobj->path)); in _rtld_relocate_nonplt_objects() 140 *where = (Elf_Addr)defobj->tlsindex; in _rtld_relocate_nonplt_objects() 143 obj->path, (void *)*where, defobj->path)); in _rtld_relocate_nonplt_objects() 151 obj->path, (void *)*where, defobj->path)); in _rtld_relocate_nonplt_objects() 155 if (!defobj in _rtld_relocate_nonplt_objects() 56 const Obj_Entry *defobj = NULL; _rtld_relocate_nonplt_objects() local 209 const Obj_Entry *defobj; _rtld_relocate_plt_object() local [all...] |
| /netbsd-src/libexec/ld.elf_so/arch/sh3/ |
| H A D | mdreloc.c | 65 const Obj_Entry *defobj = NULL; in _rtld_relocate_nonplt_objects() 86 def = _rtld_find_symdef(symnum, obj, &defobj, in _rtld_relocate_nonplt_objects() 102 tmp = (Elf_Addr)(defobj->relocbase + def->st_value + in _rtld_relocate_nonplt_objects() 108 obj->path, (void *)*where, defobj->path)); in _rtld_relocate_nonplt_objects() 112 tmp = (Elf_Addr)(defobj->relocbase + def->st_value + in _rtld_relocate_nonplt_objects() 118 obj->path, (void *)*where, defobj->path)); in _rtld_relocate_nonplt_objects() 123 tmp = (Elf_Addr)(defobj->relocbase + def->st_value + in _rtld_relocate_nonplt_objects() 129 obj->path, (void *)*where, defobj->path)); in _rtld_relocate_nonplt_objects() 133 tmp = (Elf_Addr)(defobj->relocbase + def->st_value) + in _rtld_relocate_nonplt_objects() 139 obj->path, (void *)*where, defobj in _rtld_relocate_nonplt_objects() 56 const Obj_Entry *defobj = NULL; _rtld_relocate_nonplt_objects() local 263 const Obj_Entry *defobj; _rtld_relocate_plt_object() local [all...] |
| /netbsd-src/libexec/ld.elf_so/arch/x86_64/ |
| H A D | mdreloc.c | 137 const Obj_Entry *defobj = NULL; in _rtld_relocate_nonplt_objects() local 163 def = _rtld_find_symdef(symnum, obj, &defobj, in _rtld_relocate_nonplt_objects() 180 tmp32 = (Elf32_Addr)(u_long)(defobj->relocbase + in _rtld_relocate_nonplt_objects() 188 defobj->path)); in _rtld_relocate_nonplt_objects() 191 tmp64 = (Elf64_Addr)(defobj->relocbase + def->st_value + in _rtld_relocate_nonplt_objects() 198 obj->path, (void *)*where64, defobj->path)); in _rtld_relocate_nonplt_objects() 201 tmp32 = (Elf32_Addr)(u_long)(defobj->relocbase + in _rtld_relocate_nonplt_objects() 209 defobj->path)); in _rtld_relocate_nonplt_objects() 212 tmp64 = (Elf64_Addr)(defobj->relocbase + def->st_value); in _rtld_relocate_nonplt_objects() 218 obj->path, (void *)*where64, defobj in _rtld_relocate_nonplt_objects() 316 const Obj_Entry *defobj; _rtld_relocate_plt_object() local [all...] |
| /netbsd-src/libexec/ld.elf_so/arch/aarch64/ |
| H A D | mdreloc.c | 149 const Obj_Entry *defobj; in _rtld_tlsdesc_fill() 154 def = _rtld_find_symdef(ELF_R_SYM(rela->r_info), obj, &defobj, in _rtld_tlsdesc_fill() 171 defobj = obj; in _rtld_tlsdesc_fill() 175 if (defobj->tls_static) { in _rtld_tlsdesc_fill() 178 where[1] = defobj->tlsoffset + offs + 186 where[1] = (Elf_Addr)_rtld_tlsdesc_alloc(defobj->tlsindex, offs); in _rtld_relocate_nonplt_self() 190 obj->path, (void *)where[1], defobj->tlsindex, (void *)offs)); in _rtld_relocate_nonplt_self() 222 const Obj_Entry *defobj = NULL; in _rtld_relocate_nonplt_objects() 241 def = _rtld_find_symdef(symnum, obj, &defobj, in _rtld_relocate_nonplt_objects() 257 tmp = (Elf_Addr)defobj in _rtld_relocate_nonplt_objects() 134 const Obj_Entry *defobj; _rtld_tlsdesc_fill() local 207 const Obj_Entry *defobj = NULL; _rtld_relocate_nonplt_objects() local 390 const Obj_Entry *defobj; _rtld_relocate_plt_object() local [all...] |
| /netbsd-src/libexec/ld.elf_so/arch/i386/ |
| H A D | mdreloc.c | 60 const Obj_Entry *defobj = NULL; in _rtld_relocate_nonplt_objects() local 82 def = _rtld_find_symdef(symnum, obj, &defobj, in _rtld_relocate_nonplt_objects() 99 target = (Elf_Addr)(defobj->relocbase + def->st_value); in _rtld_relocate_nonplt_objects() 104 obj->path, (void *)*where, defobj->path)); in _rtld_relocate_nonplt_objects() 111 target = (Elf_Addr)(defobj->relocbase + def->st_value); in _rtld_relocate_nonplt_objects() 118 obj->path, (void *)*where, defobj->path)); in _rtld_relocate_nonplt_objects() 153 if (!defobj->tls_static && in _rtld_relocate_nonplt_objects() 154 _rtld_tls_offset_allocate(__UNCONST(defobj))) in _rtld_relocate_nonplt_objects() 157 *where += (Elf_Addr)(def->st_value - defobj->tlsoffset); in _rtld_relocate_nonplt_objects() 165 if (!defobj in _rtld_relocate_nonplt_objects() 237 const Obj_Entry *defobj; _rtld_relocate_plt_object() local [all...] |
| /netbsd-src/libexec/ld.elf_so/arch/or1k/ |
| H A D | mdreloc.c | 99 const Obj_Entry *defobj = NULL; in _rtld_relocate_nonplt_objects() 118 def = _rtld_find_symdef(symnum, obj, &defobj, in _rtld_relocate_nonplt_objects() 137 tmp = (Elf_Addr)(defobj->relocbase + def->st_value + in _rtld_relocate_nonplt_objects() 143 obj->path, (void *)*where, defobj->path)); in _rtld_relocate_nonplt_objects() 169 *where = (Elf_Addr)defobj->tlsindex; in _rtld_relocate_nonplt_objects() 172 obj->path, (void *)*where, defobj->path)); in _rtld_relocate_nonplt_objects() 180 obj->path, (void *)*where, defobj->path)); in _rtld_relocate_nonplt_objects() 184 if (!defobj->tls_static && in _rtld_relocate_nonplt_objects() 185 _rtld_tls_offset_allocate(__UNCONST(defobj))) in _rtld_relocate_nonplt_objects() 189 + defobj in _rtld_relocate_nonplt_objects() 97 const Obj_Entry *defobj = NULL; _rtld_relocate_nonplt_objects() local 238 const Obj_Entry *defobj; _rtld_relocate_plt_object() local [all...] |
| /netbsd-src/libexec/ld.elf_so/arch/riscv/ |
| H A D | mdreloc.c | 114 const Obj_Entry *defobj = NULL; in _rtld_relocate_nonplt_objects() 131 def = _rtld_find_symdef(symnum, obj, &defobj, in _rtld_relocate_nonplt_objects() 160 const Elf_Addr val = (Elf_Addr)defobj->relocbase + in _rtld_relocate_nonplt_objects() 190 const Elf_Addr val = (Elf_Addr)defobj->tlsindex; in _rtld_relocate_nonplt_objects() 210 defobj->path)); in _rtld_relocate_nonplt_objects() 217 if (!defobj->tls_static && in _rtld_relocate_nonplt_objects() 218 _rtld_tls_offset_allocate(__UNCONST(defobj))) in _rtld_relocate_nonplt_objects() 221 *where = (Elf_Addr)(def->st_value + defobj->tlsoffset + in _rtld_relocate_nonplt_objects() 227 obj->path, (void *)*where, defobj->path)); in _rtld_relocate_nonplt_objects() 275 const Obj_Entry *defobj; in _rtld_relocate_plt_object() 103 const Obj_Entry *defobj = NULL; _rtld_relocate_nonplt_objects() local 264 const Obj_Entry *defobj; _rtld_relocate_plt_object() local [all...] |
| /netbsd-src/libexec/ld.elf_so/arch/powerpc/ |
| H A D | ppc_reloc.c | 197 const Obj_Entry *defobj = NULL; in _rtld_relocate_nonplt_objects() 224 def = _rtld_find_symdef(symnum, obj, &defobj, in _rtld_relocate_nonplt_objects() 248 tmp = (Elf_Addr)(defobj->relocbase + def->st_value + in _rtld_relocate_nonplt_objects() 254 obj->path, (void *)*where, defobj->path)); in _rtld_relocate_nonplt_objects() 263 tmp = (Elf_Addr)(defobj->relocbase + def->st_value + in _rtld_relocate_nonplt_objects() 273 obj->path, (void *)tmp, tmp16, defobj->path)); in _rtld_relocate_nonplt_objects() 279 tmp = (Elf_Addr)(defobj->relocbase + def->st_value + in _rtld_relocate_nonplt_objects() 297 (void *)tmp, tmp16, defobj->path)); in _rtld_relocate_nonplt_objects() 324 *where = (Elf_Addr)defobj->tlsindex; in _rtld_relocate_nonplt_objects() 327 obj->path, (void *)*where, defobj in _rtld_relocate_nonplt_objects() 182 const Obj_Entry *defobj = NULL; _rtld_relocate_nonplt_objects() local 427 const Obj_Entry *defobj; _rtld_relocate_plt_object() local [all...] |
| /netbsd-src/libexec/ld.elf_so/arch/hppa/ |
| H A D | hppa_reloc.c | 327 * in the defining object defobj, plus the given addend. If in _rtld_function_descriptor_alloc() 329 * the (unrelocated) address in addend in the object defobj. in _rtld_function_descriptor_alloc() 332 _rtld_function_descriptor_alloc(const Obj_Entry *defobj, const Elf_Sym *def, in _rtld_function_descriptor_alloc() 350 func_pc = (Elf_Addr)(defobj->relocbase + def->st_value + in _rtld_function_descriptor_alloc() 353 func_pc = (Elf_Addr)(defobj->relocbase + addend); in _rtld_function_descriptor_alloc() 359 func_sl = (Elf_Addr)(defobj->pltgot); in _rtld_function_descriptor_alloc() 435 const Obj_Entry *defobj = NULL; in _rtld_relocate_nonplt_objects() 513 defobj = obj; in _rtld_relocate_nonplt_objects() 517 def = _rtld_find_symdef(symnum, obj, &defobj, in _rtld_relocate_nonplt_objects() 532 tmp = (Elf_Addr)(defobj in _rtld_relocate_nonplt_objects() 315 _rtld_function_descriptor_alloc(const Obj_Entry * defobj,const Elf_Sym * def,Elf_Addr addend) _rtld_function_descriptor_alloc() argument 418 const Obj_Entry *defobj = NULL; _rtld_relocate_nonplt_objects() local 659 const Obj_Entry *defobj; _rtld_relocate_plt_object() local [all...] |
| /netbsd-src/libexec/ld.elf_so/arch/arm/ |
| H A D | mdreloc.c | 87 const Obj_Entry *defobj = NULL; in _rtld_relocate_nonplt_objects() 107 def = _rtld_find_symdef(symnum, obj, &defobj, in _rtld_relocate_nonplt_objects() 150 defobj->path)); in _rtld_relocate_nonplt_objects() 158 tmp = *where + (Elf_Addr)defobj->relocbase + in _rtld_relocate_nonplt_objects() 166 (Elf_Addr)defobj->relocbase + in _rtld_relocate_nonplt_objects() 176 defobj->path)); in _rtld_relocate_nonplt_objects() 227 tmp = (Elf_Addr)(defobj->tlsindex); in _rtld_relocate_nonplt_objects() 240 if (!defobj->tls_static && in _rtld_relocate_nonplt_objects() 241 _rtld_tls_offset_allocate(__UNCONST(defobj))) in _rtld_relocate_nonplt_objects() 248 tmp += (Elf_Addr)def->st_value + defobj in _rtld_relocate_nonplt_objects() 78 const Obj_Entry *defobj = NULL; _rtld_relocate_nonplt_objects() local 293 const Obj_Entry *defobj; _rtld_relocate_plt_object() local [all...] |
| /netbsd-src/libexec/ld.elf_so/arch/mips/ |
| H A D | mips_reloc.c | 252 const Obj_Entry *defobj = NULL; in _rtld_relocate_nonplt_objects() 294 def = _rtld_find_symdef(i, obj, &defobj, false); in _rtld_relocate_nonplt_objects() 297 *got = def->st_value + (Elf_Addr)defobj->relocbase; in _rtld_relocate_nonplt_objects() 324 def = _rtld_find_symdef(i, obj, &defobj, false); in _rtld_relocate_nonplt_objects() 327 *got = def->st_value + (Elf_Addr)defobj->relocbase; in _rtld_relocate_nonplt_objects() 355 def = _rtld_find_symdef(symnum, obj, &defobj, in _rtld_relocate_nonplt_objects() 432 val += (Elf_Addr)defobj->tlsindex; in _rtld_relocate_nonplt_objects() 437 obj->path, (void *)old, defobj->path)); in _rtld_relocate_nonplt_objects() 455 obj->path, (void *)old, defobj->path)); in _rtld_relocate_nonplt_objects() 468 if (!defobj in _rtld_relocate_nonplt_objects() 234 const Obj_Entry *defobj = NULL; _rtld_relocate_nonplt_objects() local 494 const Obj_Entry *defobj; _rtld_relocate_plt_object() local [all...] |
| /netbsd-src/libexec/ld.elf_so/arch/alpha/ |
| H A D | alpha_reloc.c | 204 const Obj_Entry *defobj = NULL; in _rtld_relocate_nonplt_objects() local 223 def = _rtld_find_symdef(symnum, obj, &defobj, in _rtld_relocate_nonplt_objects() 240 target = (Elf_Addr)(defobj->relocbase + in _rtld_relocate_nonplt_objects() 253 obj->path, (void *)tmp, defobj->path)); in _rtld_relocate_nonplt_objects() 283 if (!defobj->tls_static && in _rtld_relocate_nonplt_objects() 284 _rtld_tls_offset_allocate(__UNCONST(defobj))) in _rtld_relocate_nonplt_objects() 288 sizeof(struct tls_tcb) + defobj->tlsoffset + in _rtld_relocate_nonplt_objects() 303 tmp = (Elf64_Addr)defobj->tlsindex; in _rtld_relocate_nonplt_objects() 373 const Obj_Entry *defobj; in _rtld_relocate_plt_object() local 379 def = _rtld_find_plt_symdef(ELF_R_SYM(info), obj, &defobj, t in _rtld_relocate_plt_object() [all...] |
| /netbsd-src/libexec/ld.elf_so/arch/vax/ |
| H A D | mdreloc.c | 55 const Obj_Entry *defobj = NULL; in _rtld_relocate_nonplt_objects() local 71 def = _rtld_find_symdef(symnum, obj, &defobj, in _rtld_relocate_nonplt_objects() 88 tmp = (Elf_Addr)(defobj->relocbase + def->st_value + in _rtld_relocate_nonplt_objects() 95 obj->path, (void *)*where, defobj->path)); in _rtld_relocate_nonplt_objects() 166 const Obj_Entry *defobj; in _rtld_relocate_plt_object() local 171 def = _rtld_find_plt_symdef(ELF_R_SYM(info), obj, &defobj, tp != NULL); in _rtld_relocate_plt_object() 180 new_value = _rtld_resolve_ifunc(defobj, def); in _rtld_relocate_plt_object() 182 new_value = (Elf_Addr)(defobj->relocbase + def->st_value + in _rtld_relocate_plt_object() 186 defobj->strtab + def->st_name, (void *)*where, (void *)new_value)); in _rtld_relocate_plt_object()
|
| /netbsd-src/libexec/ld.elf_so/arch/sparc/ |
| H A D | mdreloc.c | 216 const Obj_Entry *defobj = NULL; in _rtld_relocate_nonplt_objects() 260 def = _rtld_find_symdef(symnum, obj, &defobj, in _rtld_relocate_nonplt_objects() 273 *where = (Elf_Addr)defobj->tlsindex; in _rtld_relocate_nonplt_objects() 294 if (!defobj->tls_static && in _rtld_relocate_nonplt_objects() 295 _rtld_tls_offset_allocate(__UNCONST(defobj))) in _rtld_relocate_nonplt_objects() 299 defobj->tlsoffset + rela->r_addend); in _rtld_relocate_nonplt_objects() 330 value += (Elf_Word)(defobj->relocbase + def->st_value); in _rtld_relocate_nonplt_objects() 397 obj->path, (void *)value, defobj->path)); 454 const Obj_Entry *defobj; in _rtld_relocate_plt_object() 464 def = _rtld_find_plt_symdef(ELF_R_SYM(info), obj, &defobj, t in _rtld_relocate_plt_object() 207 const Obj_Entry *defobj = NULL; _rtld_relocate_nonplt_objects() local 445 const Obj_Entry *defobj; _rtld_relocate_plt_object() local [all...] |
| /netbsd-src/libexec/ld.elf_so/arch/sparc64/ |
| H A D | mdreloc.c | 310 const Obj_Entry *defobj = NULL; in _rtld_relocate_nonplt_objects() 361 def = _rtld_find_symdef(symnum, obj, &defobj, in _rtld_relocate_nonplt_objects() 374 *where = (Elf64_Addr)defobj->tlsindex; in _rtld_relocate_nonplt_objects() 395 if (!defobj->tls_static && in _rtld_relocate_nonplt_objects() 396 _rtld_tls_offset_allocate(__UNCONST(defobj))) in _rtld_relocate_nonplt_objects() 400 defobj->tlsoffset + rela->r_addend); in _rtld_relocate_nonplt_objects() 423 value += (Elf_Addr)(defobj->relocbase + def->st_value); in _rtld_relocate_nonplt_objects() 504 obj->path, (void *)value, defobj->path)); 615 const Obj_Entry *defobj; in _rtld_relocate_plt_object() 624 def = _rtld_find_plt_symdef(ELF_R_SYM(info), obj, &defobj, t in _rtld_relocate_plt_object() 301 const Obj_Entry *defobj = NULL; _rtld_relocate_nonplt_objects() local 606 const Obj_Entry *defobj; _rtld_relocate_plt_object() local [all...] |