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.c178 void elf_reloc_self(Elf_Dyn *dynp, Elf_Addr relocbase);
234 elf_reloc_internal(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_internal() argument
251 where = (Elf_Addr *) ((uintptr_t)relocbase + rela->r_offset); in elf_reloc_internal()
252 hwhere = (Elf_Half *) ((uintptr_t)relocbase + rela->r_offset); in elf_reloc_internal()
281 if (addr > relocbase && addr <= (relocbase + addend)) in elf_reloc_internal()
282 addr = relocbase; in elf_reloc_internal()
296 if (addr > relocbase && addr <= (relocbase + addend)) in elf_reloc_internal()
297 addr = relocbase; in elf_reloc_internal()
304 *where = elf_relocaddr(lf, relocbase + addend); in elf_reloc_internal()
322 addr = relocbase + addend; in elf_reloc_internal()
[all …]
H A Delf64_machdep.c201 void elf_reloc_self(Elf_Dyn *dynp, Elf_Addr relocbase);
322 elf_reloc_internal(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_internal() argument
338 where = (Elf_Addr *) (relocbase + rela->r_offset); in elf_reloc_internal()
360 *where = elf_relocaddr(lf, relocbase + addend); in elf_reloc_internal()
374 addr = relocbase + addend; in elf_reloc_internal()
389 elf_reloc_self(Elf_Dyn *dynp, Elf_Addr relocbase) in elf_reloc_self() argument
401 rela = (Elf_Rela *)(relocbase+dynp->d_un.d_ptr); in elf_reloc_self()
416 where = (Elf_Addr *)(relocbase + rela->r_offset); in elf_reloc_self()
417 *where = (Elf_Addr)(relocbase + rela->r_addend); in elf_reloc_self()
422 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.c178 elf_reloc_internal(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_internal() argument
192 where = (Elf_Addr *) (relocbase + rel->r_offset); in elf_reloc_internal()
199 where = (Elf_Addr *) (relocbase + rela->r_offset); in elf_reloc_internal()
217 *where = elf_relocaddr(lf, relocbase + addend); in elf_reloc_internal()
257 addr = relocbase + addend; in elf_reloc_internal()
271 elf_reloc_local(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_local() argument
275 return (elf_reloc_internal(lf, relocbase, data, type, in elf_reloc_local()
281 elf_reloc(linker_file_t lf, Elf_Addr relocbase, const void *data, int type, in elf_reloc() argument
285 return (elf_reloc_internal(lf, relocbase, data, type, 0, lookup)); in elf_reloc()
289 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.c109 dstaddr = (void *)(dstobj->relocbase + rela->r_offset); in do_copy_relocations()
134 srcaddr = (const void *)(defobj->relocbase + srcsym->st_value); in do_copy_relocations()
155 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_plt()
159 *where += (Elf_Addr)obj->relocbase; in reloc_plt()
190 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_jmpslots()
205 *where = (Elf_Addr)(defobj->relocbase + def->st_value); in reloc_jmpslots()
223 ptr = (Elf_Addr *)(obj->relocbase + rela->r_addend); in reloc_iresolve_one()
224 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_iresolve_one()
284 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_gnu_ifunc()
344 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.c276 elf_reloc_internal(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_internal() argument
291 where = (Elf_Addr *) (relocbase + rel->r_offset); in elf_reloc_internal()
308 where = (Elf_Addr *) (relocbase + rela->r_offset); in elf_reloc_internal()
378 addr = elf_relocaddr(lf, relocbase + addend); in elf_reloc_internal()
385 addr = relocbase + addend; in elf_reloc_internal()
400 elf_reloc(linker_file_t lf, Elf_Addr relocbase, const void *data, int type, in elf_reloc() argument
404 return (elf_reloc_internal(lf, relocbase, data, type, false, lookup)); in elf_reloc()
408 elf_reloc_local(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_local() argument
412 return (elf_reloc_internal(lf, relocbase, data, type, false, lookup)); in elf_reloc_local()
416 elf_reloc_late(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_late() argument
[all …]
/freebsd/sys/arm/arm/
H A Delf_machdep.c184 elf_reloc_internal(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_internal() argument
198 where = (Elf_Addr *) (relocbase + rel->r_offset); in elf_reloc_internal()
205 where = (Elf_Addr *) (relocbase + rela->r_offset); in elf_reloc_internal()
216 addr = elf_relocaddr(lf, relocbase + addend); in elf_reloc_internal()
263 elf_reloc(linker_file_t lf, Elf_Addr relocbase, const void *data, int type, in elf_reloc() argument
267 return (elf_reloc_internal(lf, relocbase, data, type, 0, lookup)); in elf_reloc()
271 elf_reloc_local(linker_file_t lf, Elf_Addr relocbase, const void *data, in elf_reloc_local() argument
275 return (elf_reloc_internal(lf, relocbase, data, type, 1, lookup)); in elf_reloc_local()
/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/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/aarch64/
H A Dreloc.c148 dstaddr = (void *)(dstobj->relocbase + rela->r_offset); in do_copy_relocations()
172 srcaddr = (const void *)(defobj->relocbase + srcsym->st_value); in do_copy_relocations()
260 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_plt()
278 *where += (Elf_Addr)obj->relocbase; in reloc_plt()
289 target = (Elf_Addr)(defobj->relocbase + in reloc_plt()
336 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_jmpslots()
347 target = (Elf_Addr)(defobj->relocbase + def->st_value); in reloc_jmpslots()
364 ptr = (Elf_Addr *)(obj->relocbase + rela->r_addend); in reloc_iresolve_one()
365 where = (Elf_Addr *)(obj->relocbase + rela->r_offset); in reloc_iresolve_one()
422 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.c307 obj->relocbase = mapbase - base_vaddr; in map_object()
308 obj->dynamic = (const Elf_Dyn *)(obj->relocbase + phdyn->p_vaddr); in map_object()
310 obj->entry = (caddr_t)(obj->relocbase + hdr->e_entry); in map_object()
312 obj->phdr = (const Elf_Phdr *)(obj->relocbase + phdr_vaddr); in map_object()
327 obj->interp = (const char *)(obj->relocbase + in map_object()
H A Drtld.c847 sym_zero.st_value = -(uintptr_t)obj_main->relocbase; in _rtld()
1045 where = (Elf_Addr *)(obj->relocbase + rel->r_offset); in _rtld_bind()
1053 target = (Elf_Addr)(defobj->relocbase + def->st_value); in _rtld_bind()
1282 obj->rel = (const Elf_Rel *)(obj->relocbase + in digest_dynamic1()
1295 obj->pltrel = (const Elf_Rel *)(obj->relocbase + in digest_dynamic1()
1304 obj->rela = (const Elf_Rela *)(obj->relocbase + in digest_dynamic1()
1317 obj->relr = (const Elf_Relr *)(obj->relocbase + in digest_dynamic1()
1336 obj->symtab = (const Elf_Sym *)(obj->relocbase + in digest_dynamic1()
1345 obj->strtab = (const char *)(obj->relocbase + in digest_dynamic1()
1354 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,