Home
last modified time | relevance | path

Searched refs:relocbase (Results 1 – 21 of 21) sorted by relevance

/freebsd/sys/powerpc/powerpc/
H A Delf32_machdep.c180 void elf_reloc_self(Elf_Dyn *dynp, Elf_Addr relocbase);
236 elf_reloc_internal(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_internal() argument
253 where = (Elf_Addr *) ((uintptr_t)relocbase + rela->r_offset); in elf_reloc_internal()
254 hwhere = (Elf_Half *) ((uintptr_t)relocbase + rela->r_offset); in elf_reloc_internal()
283 if (addr > relocbase && addr <= (relocbase + addend)) in elf_reloc_internal()
284 addr = relocbase; in elf_reloc_internal()
298 if (addr > relocbase && addr <= (relocbase + addend)) in elf_reloc_internal()
299 addr = relocbase; in elf_reloc_internal()
306 *where = elf_relocaddr(lf, relocbase + addend); in elf_reloc_internal()
324 addr = relocbase + addend; in elf_reloc_internal()
[all …]
H A Delf64_machdep.c205 void elf_reloc_self(Elf_Dyn *dynp, Elf_Addr relocbase);
326 elf_reloc_internal(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_internal() argument
342 where = (Elf_Addr *) (relocbase + rela->r_offset); in elf_reloc_internal()
364 *where = elf_relocaddr(lf, relocbase + addend); in elf_reloc_internal()
378 addr = relocbase + addend; in elf_reloc_internal()
393 elf_reloc_self(Elf_Dyn *dynp, Elf_Addr relocbase) in elf_reloc_self() argument
405 rela = (Elf_Rela *)(relocbase+dynp->d_un.d_ptr); in elf_reloc_self()
420 where = (Elf_Addr *)(relocbase + rela->r_offset); in elf_reloc_self()
421 *where = (Elf_Addr)(relocbase + rela->r_addend); in elf_reloc_self()
426 elf_reloc(linker_file_t lf, Elf_Addr relocbase, const void *data, int type, in elf_reloc() argument
[all …]
/freebsd/libexec/rtld-elf/powerpc64/
H A Dreloc.c59 obj->glink = (Elf_Addr)(obj->relocbase + dynp->d_un.d_ptr); in arch_digest_dynamic()
97 dstaddr = (void *)(dstobj->relocbase + rela->r_offset); in do_copy_relocations()
122 srcaddr = (const void *)(defobj->relocbase+srcsym->st_value); in do_copy_relocations()
135 reloc_non_plt_self(Elf_Dyn *dynp, Elf_Addr relocbase) in reloc_non_plt_self() argument
147 rela = (const Elf_Rela *)(relocbase+dynp->d_un.d_ptr); in reloc_non_plt_self()
160 where = (Elf_Addr *)(relocbase + rela->r_offset); in reloc_non_plt_self()
161 *where = (Elf_Addr)(relocbase + rela->r_addend); in reloc_non_plt_self()
225 symval = (Elf_Addr)defobj->relocbase + in reloc_nonplt_object()
234 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_nonplt_object()
277 symval = (Elf_Addr)(obj->relocbase + rela->r_addend); in reloc_nonplt_object()
[all …]
/freebsd/libexec/rtld-elf/arm/
H A Dreloc.c49 dstaddr = (void *)(dstobj->relocbase + rel->r_offset); in do_copy_relocations()
75 srcaddr = (const void *)(defobj->relocbase + in do_copy_relocations()
87 _rtld_relocate_nonplt_self(Elf_Dyn *dynp, Elf_Addr relocbase) in _rtld_relocate_nonplt_self() argument
96 rel = (const Elf_Rel *)(relocbase + dynp->d_un.d_ptr); in _rtld_relocate_nonplt_self()
105 where = (Elf_Addr *)(relocbase + rel->r_offset); in _rtld_relocate_nonplt_self()
107 *where += (Elf_Addr)relocbase; in _rtld_relocate_nonplt_self()
144 where = (Elf_Addr *)(obj->relocbase + rel->r_offset); in reloc_nonplt_object()
166 tmp = (Elf_Addr)obj->relocbase + def->st_value in reloc_nonplt_object()
194 tmp = *where + (Elf_Addr)defobj->relocbase + in reloc_nonplt_object()
199 (Elf_Addr)defobj->relocbase + in reloc_nonplt_object()
[all …]
/freebsd/libexec/rtld-elf/powerpc/
H A Dreloc.c64 obj->gotptr = (Elf_Addr *)(obj->relocbase + dynp->d_un.d_ptr); in arch_digest_dynamic()
102 dstaddr = (void *)(dstobj->relocbase + rela->r_offset); in do_copy_relocations()
127 srcaddr = (const void *)(defobj->relocbase+srcsym->st_value); in do_copy_relocations()
140 reloc_non_plt_self(Elf_Dyn *dynp, Elf_Addr relocbase) in reloc_non_plt_self() argument
152 rela = (const Elf_Rela *)(relocbase+dynp->d_un.d_ptr); in reloc_non_plt_self()
165 where = (Elf_Addr *)(relocbase + rela->r_offset); in reloc_non_plt_self()
166 *where = (Elf_Addr)(relocbase + rela->r_addend); in reloc_non_plt_self()
231 symval = (Elf_Addr)defobj->relocbase + in reloc_nonplt_object()
239 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_nonplt_object()
282 symval = (Elf_Addr)(obj->relocbase + rela->r_addend); in reloc_nonplt_object()
[all …]
H A Drtld_start.S67 sub %r28,%r3,%r28 # r28 = relocbase
68 mr %r4,%r28 # r4 = relocbase
/freebsd/sys/i386/i386/
H A Delf_machdep.c173 elf_reloc_internal(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_internal() argument
187 where = (Elf_Addr *) (relocbase + rel->r_offset); in elf_reloc_internal()
194 where = (Elf_Addr *) (relocbase + rela->r_offset); in elf_reloc_internal()
205 addr = elf_relocaddr(lf, relocbase + addend); in elf_reloc_internal()
257 addr = relocbase + addend; in elf_reloc_internal()
272 elf_reloc(linker_file_t lf, Elf_Addr relocbase, const void *data, int type, in elf_reloc() argument
276 return (elf_reloc_internal(lf, relocbase, data, type, lookup, 0)); in elf_reloc()
280 elf_reloc_local(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_local() argument
284 return (elf_reloc_internal(lf, relocbase, data, type, lookup, in elf_reloc_local()
/freebsd/sys/arm64/arm64/
H A Delf_machdep.c197 elf_reloc_internal(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_internal() argument
211 where = (Elf_Addr *) (relocbase + rel->r_offset); in elf_reloc_internal()
218 where = (Elf_Addr *) (relocbase + rela->r_offset); in elf_reloc_internal()
236 *where = elf_relocaddr(lf, relocbase + addend); in elf_reloc_internal()
276 addr = relocbase + addend; in elf_reloc_internal()
290 elf_reloc_local(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_local() argument
294 return (elf_reloc_internal(lf, relocbase, data, type, in elf_reloc_local()
300 elf_reloc(linker_file_t lf, Elf_Addr relocbase, const void *data, int type, in elf_reloc() argument
304 return (elf_reloc_internal(lf, relocbase, data, type, 0, lookup)); in elf_reloc()
308 elf_reloc_late(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_late() argument
[all …]
/freebsd/libexec/rtld-elf/riscv/
H A Dreloc.c102 dstaddr = (void *)(dstobj->relocbase + rela->r_offset); in do_copy_relocations()
127 srcaddr = (const void *)(defobj->relocbase + srcsym->st_value); in do_copy_relocations()
148 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_plt()
152 *where += (Elf_Addr)obj->relocbase; in reloc_plt()
183 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_jmpslots()
198 *where = (Elf_Addr)(defobj->relocbase + def->st_value); in reloc_jmpslots()
216 ptr = (Elf_Addr *)(obj->relocbase + rela->r_addend); in reloc_iresolve_one()
217 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_iresolve_one()
277 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_gnu_ifunc()
337 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_non_plt()
[all …]
H A Drtld_machdep.h68 ((defobj)->relocbase + (def)->st_value)
/freebsd/sys/amd64/amd64/
H A Delf_machdep.c278 elf_reloc_internal(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_internal()
293 where = (Elf_Addr *) (relocbase + rel->r_offset); in elf_reloc_internal()
310 where = (Elf_Addr *) (relocbase + rela->r_offset); in elf_reloc_internal()
380 addr = elf_relocaddr(lf, relocbase + addend); in elf_reloc_internal()
387 addr = relocbase + addend; in elf_reloc_internal()
402 elf_reloc(linker_file_t lf, Elf_Addr relocbase, const void *data, int type, in elf_reloc()
406 return (elf_reloc_internal(lf, relocbase, data, type, false, lookup));
410 elf_reloc_local(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_local()
414 return (elf_reloc_internal(lf, relocbase, data, type, false, lookup));
418 elf_reloc_late(linker_file_t lf, Elf_Addr relocbase, cons in elf_reloc_late()
276 elf_reloc_internal(linker_file_t lf,Elf_Addr relocbase,const void * data,int type,bool late_ifunc,elf_lookup_fn lookup) elf_reloc_internal() argument
400 elf_reloc(linker_file_t lf,Elf_Addr relocbase,const void * data,int type,elf_lookup_fn lookup) elf_reloc() argument
408 elf_reloc_local(linker_file_t lf,Elf_Addr relocbase,const void * data,int type,elf_lookup_fn lookup) elf_reloc_local() argument
416 elf_reloc_late(linker_file_t lf,Elf_Addr relocbase,const void * data,int type,elf_lookup_fn lookup) elf_reloc_late() argument
[all...]
/freebsd/sys/arm/arm/
H A Delf_machdep.c186 elf_reloc_internal(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_internal() argument
200 where = (Elf_Addr *) (relocbase + rel->r_offset); in elf_reloc_internal()
207 where = (Elf_Addr *) (relocbase + rela->r_offset); in elf_reloc_internal()
218 addr = elf_relocaddr(lf, relocbase + addend); in elf_reloc_internal()
265 elf_reloc(linker_file_t lf, Elf_Addr relocbase, const void *data, int type, in elf_reloc() argument
269 return (elf_reloc_internal(lf, relocbase, data, type, 0, lookup)); in elf_reloc()
273 elf_reloc_local(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_local() argument
277 return (elf_reloc_internal(lf, relocbase, data, type, 1, lookup)); in elf_reloc_local()
/freebsd/libexec/rtld-elf/i386/
H A Dreloc.c82 dstaddr = (void *)(dstobj->relocbase + rel->r_offset); in do_copy_relocations()
109 srcaddr = (const void *)(defobj->relocbase + in do_copy_relocations()
194 symval = (Elf_Addr)defobj->relocbase + in reloc_non_plt()
203 where = (Elf_Addr *)(obj->relocbase + rel->r_offset); in reloc_non_plt()
238 *where += (Elf_Addr)obj->relocbase; in reloc_non_plt()
301 where = (Elf_Addr *)(obj->relocbase + rel->r_offset); in reloc_plt()
302 *where += (Elf_Addr)obj->relocbase; in reloc_plt()
335 where = (Elf_Addr *)(obj->relocbase + rel->r_offset); in reloc_jmpslots()
344 target = (Elf_Addr)(defobj->relocbase + def->st_value); in reloc_jmpslots()
378 where = (Elf_Addr *)(obj->relocbase + rel->r_offset); in reloc_iresolve_one()
[all …]
/freebsd/libexec/rtld-elf/amd64/
H A Dreloc.c85 dstaddr = (void *)(dstobj->relocbase + rela->r_offset); in do_copy_relocations()
111 srcaddr = (const void *)(defobj->relocbase + in do_copy_relocations()
212 symval = (Elf_Addr)defobj->relocbase + in reloc_non_plt()
221 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_non_plt()
311 *where = (Elf_Addr)(obj->relocbase + rela->r_addend); in reloc_non_plt()
350 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_plt()
351 *where += (Elf_Addr)obj->relocbase; in reloc_plt()
385 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_jmpslots()
394 target = (Elf_Addr)(defobj->relocbase + def->st_value + in reloc_jmpslots()
431 ptr = (Elf_Addr *)(obj->relocbase + rela->r_addend); in reloc_iresolve_one()
[all …]
/freebsd/libexec/rtld-elf/aarch64/
H A Dreloc.c141 dstaddr = (void *)(dstobj->relocbase + rela->r_offset); in do_copy_relocations()
165 srcaddr = (const void *)(defobj->relocbase + srcsym->st_value); in do_copy_relocations()
253 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_plt()
271 *where += (Elf_Addr)obj->relocbase; in reloc_plt()
282 target = (Elf_Addr)(defobj->relocbase + in reloc_plt()
329 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_jmpslots()
340 target = (Elf_Addr)(defobj->relocbase + def->st_value); in reloc_jmpslots()
357 ptr = (Elf_Addr *)(obj->relocbase + rela->r_addend); in reloc_iresolve_one()
358 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_iresolve_one()
415 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_gnu_ifunc()
[all …]
/freebsd/sys/riscv/riscv/
H A Delf_machdep.c290 elf_reloc_internal(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_internal() argument
308 where = (Elf_Addr *)(relocbase + rela->r_offset); in elf_reloc_internal()
352 *where = elf_relocaddr(lf, relocbase + addend); in elf_reloc_internal()
515 elf_reloc(linker_file_t lf, Elf_Addr relocbase, const void *data, int type, in elf_reloc() argument
519 return (elf_reloc_internal(lf, relocbase, data, type, 0, lookup)); in elf_reloc()
523 elf_reloc_local(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_local() argument
527 return (elf_reloc_internal(lf, relocbase, data, type, 1, lookup)); in elf_reloc_local()
/freebsd/libexec/rtld-elf/
H A Ddebug.c75 rtld_printf("Object \"%s\", relocbase %p\n", obj->path, obj->relocbase); in dump_obj_relocations()
113 dstaddr = (Elf_Addr *)(obj->relocbase + rel->r_offset); in dump_Elf_Rel()
135 dstaddr = (Elf_Addr *)(obj->relocbase + rela->r_offset); in dump_Elf_Rela()
H A Dmap_object.c303 obj->relocbase = mapbase - base_vaddr; in map_object()
304 obj->dynamic = (const Elf_Dyn *)(obj->relocbase + phdyn->p_vaddr); in map_object()
306 obj->entry = (caddr_t)(obj->relocbase + hdr->e_entry); in map_object()
308 obj->phdr = (const Elf_Phdr *)(obj->relocbase + phdr_vaddr); in map_object()
323 obj->interp = (const char *)(obj->relocbase + in map_object()
336 obj->tlsinit = obj->relocbase + phtls->p_vaddr; in map_object()
H A Drtld.c875 sym_zero.st_value = -(uintptr_t)obj_main->relocbase; in _rtld()
1087 where = (Elf_Addr *)(obj->relocbase + rel->r_offset); in _rtld_bind()
1099 target = (Elf_Addr)(defobj->relocbase + def->st_value); in _rtld_bind()
1329 obj->rel = (const Elf_Rel *)(obj->relocbase + in digest_dynamic1()
1342 obj->pltrel = (const Elf_Rel *)(obj->relocbase + in digest_dynamic1()
1351 obj->rela = (const Elf_Rela *)(obj->relocbase + in digest_dynamic1()
1364 obj->relr = (const Elf_Relr *)(obj->relocbase + in digest_dynamic1()
1383 obj->symtab = (const Elf_Sym *)(obj->relocbase + in digest_dynamic1()
1392 obj->strtab = (const char *)(obj->relocbase + in digest_dynamic1()
1401 obj->verneed = (const Elf_Verneed *)(obj->relocbase + in digest_dynamic1()
[all …]
H A Drtld.h151 caddr_t relocbase; /* Relocation constant = mapbase - vaddrbase */ member
/freebsd/sys/kern/
H A Dlink_elf.c211 typedef int (*elf_reloc_fn)(linker_file_t lf, Elf_Addr relocbase,