symtab
typedef struct symtab symtab_t;
symtab = reservespace(symtab, &symtabsize,
if (symtab == NULL || strtab == NULL) {
memcpy(symtab + symtaboff,
csym = symtab + symtaboff;
memcpy(trimmedsym, symtab, symtaboff);
trimmedsym = symtab;
symtab = NULL;
free(symtab);
static uint8_t *symtab = NULL;
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name));
obj->strtab + obj->symtab[
obj->strtab + obj->symtab[ELF_R_SYM(rel->r_info)]
obj->strtab + obj->symtab[ELF_R_SYM(rel->r_info)]
obj->strtab + obj->symtab[ELF_R_SYM(rel->r_info)]
obj->strtab + obj->symtab[ELF_R_SYM(rel->r_info)]
obj->strtab + obj->symtab[ELF_R_SYM(rel->r_info)]
const Elf_Sym *symtab, *sym;
symtab = NULL;
symtab = (const Elf_Sym *)
sym = symtab + symnum;
sym = symtab + ELF_R_SYM(rela->r_info);
sym = symtab + symnum;
def = obj->symtab + symnum;
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name));
((obj)->strtab + (obj)->symtab[ELF_R_SYM((rela)->r_info)].st_name)
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name));
const Elf_Sym *symtab = NULL, *sym;
symtab = (const Elf_Sym *)(relocbase + dynp->d_un.d_ptr);
sym = symtab + gotsym;
sym = symtab + r_symndx;
sym = obj->symtab;
sym = obj->symtab + obj->gotsym;
def2 = obj->symtab + ELF_R_SYM(rel->r_info);
obj->strtab + obj->symtab[ELF_R_SYM(rel->r_info)].st_name,
obj->strtab + obj->symtab[ELF_R_SYM(rel->r_info)].st_name,
obj->strtab + obj->symtab[ELF_R_SYM(rel->r_info)].st_name,
obj->strtab + obj->symtab[ELF_R_SYM(rel->r_info)].st_name));
const Elf_Sym *sym = obj->symtab + obj->gotsym;
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name));
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name));
obj->symtab[ELF_R_SYM(rela->r_info)].st_name,
obj->symtab[ELF_R_SYM(rela->r_info)].st_name,
obj->symtab[ELF_R_SYM(rela->r_info)].st_name,
obj->symtab[ELF_R_SYM(rela->r_info)].st_name,
obj->symtab[ELF_R_SYM(rela->r_info)].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name));
obj->symtab[symnum].st_name,
obj->symtab[symnum].st_name,
obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[ELF_R_SYM(rela->r_info)].st_name,
obj->symtab[symnum].st_name,
obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
obj->strtab + obj->symtab[symnum].st_name,
((obj)->strtab + (obj)->symtab[ELF_R_SYM((rela)->r_info)].st_name)
obj->symtab = (const Elf_Sym *)
obj->symtab == NULL || obj->strtab == NULL) {
const Elf_Sym *dstsym = dstobj->symtab + ELF_R_SYM(rela->r_info);
def = obj->symtab + symoffset;
const Elf_Sym *symtab; /* Symbol table */
symp = obj->symtab + symnum;
ref = refobj->symtab + symnum;
const Elf_Sym *ref = obj->symtab + symnum;
struct btinfo_symtab *symtab;
symtab = lookup_bootinfo(BTINFO_SYMTAB);
if (symtab) {
tssym = (vaddr_t)symtab->ssym + KERNBASE;
tesym = (vaddr_t)symtab->esym + KERNBASE;
ksyms_addsyms_elf(symtab->nsym, (void *)tssym, (void *)tesym);
sym = &eif.symtab[i];
sym = &eif.symtab[symidx];
eif.symtab = (Elf_Sym *)((uint8_t *)eif.ehdr + eif.shdr[i].sh_offset);
Elf_Sym *symtab;
sym = &eif.symtab[j];
symtab = NULL; /* XXX */
symtab = (Elf32_Sym *)(image +
if (symtab == NULL)
s = &symtab[ELF32_R_SYM(be32toh(ra->r_info))];
Elf32_Sym *symtab;
u_char *p, *symtab;
symtab = od->kstart + symstart;
p = symtab + sizeof(ehdr);
shp[i].sh_offset = p - symtab;
shp[j].sh_offset = p - symtab;
memcpy(symtab, &ehdr, sizeof(ehdr));
struct btinfo_symtab *symtab;
if ((symtab = lookup_bootinfo(BTINFO_SYMTAB)) == NULL) {
symtab->ssym += KERNBASE;
symtab->esym += KERNBASE;
ksyms_addsyms_elf(symtab->nsym, (int *)symtab->ssym, (int *)symtab->esym);
void *symtab, /* pointer to start of symbol table */
if (ALIGNED_POINTER(symtab, long) == 0) {
name, symtab);
elf = (Elf_Ehdr *)symtab;
shp = (Elf_Shdr *)((char *)symtab + elf->e_shoff);
symtab_start = (Elf_Sym *)((char *)symtab +
symtab_end = (Elf_Sym *)((char *)symtab +
strtab_start = (char *)symtab + shp[j].sh_offset;
strtab_end = (char *)symtab + shp[j].sh_offset +
(char *)symtab_end, name, (char *)symtab) != -1) {
db_elf_search_symbol(db_symtab_t *symtab, db_addr_t off, db_strategy_t strategy,
symtab = &db_symtabs;
symtab_start = STAB_TO_SYMSTART(symtab);
symtab_end = STAB_TO_SYMEND(symtab);
db_elf_symbol_values(db_symtab_t *symtab, db_sym_t sym, const char **namep,
symtab = &db_symtabs;
strtab = db_elf_find_strtab(symtab);
db_elf_line_at_pc(db_symtab_t *symtab, db_sym_t cursym, char **filename, int *linenum, db_expr_t off)
db_elf_sym_numargs(db_symtab_t *symtab, db_sym_t cursym, int *nargp,
mc->symtab = st->sd_symstart;
mc->symtab = mod->mod_kobj->ko_symtab;
kobj_renamespace(Elf_Sym *symtab, size_t symcount,
sym = &symtab[i];
rump_kernelfsym_load(void *symtab, uint64_t symsize,
ksyms_addsyms_explicit(&ehdr, symtab, symsize, strtab, strsize);
const Elf_Sym *symtab; /* Ptr to the symbol table. */
static sym_t *symtab[503];
return v % (sizeof(symtab) / sizeof(symtab[0]));
if ((sym->s_symtab_next = symtab[h]) != NULL)
symtab[h]->s_symtab_ref = &sym->s_symtab_next;
sym->s_symtab_ref = &symtab[h];
symtab[h] = sym;
for (sym_t *sym = symtab[h]; sym != NULL; sym = sym->s_symtab_next) {
for (size_t i = 0; i < sizeof(symtab) / sizeof(symtab[0]); i++) {
for (sym_t *sym = symtab[i]; sym != NULL; ) {
size_t n = sizeof(symtab) / sizeof(symtab[0]);
for (sym_t *sym = symtab[i]; sym != NULL;) {