Lines Matching full:si
53 symit_data_t *si; in built_source_types() local
55 if ((si = symit_new(elf, file)) == NULL) in built_source_types()
58 while (symit_next(si, STT_FILE) != NULL) { in built_source_types()
59 char *name = symit_name(si); in built_source_types()
82 symit_free(si); in built_source_types()
92 symit_data_t *si = NULL; in read_file() local
110 if ((si = symit_new(elf, file)) == NULL) { in read_file()
115 td = ctf_load(file, ctfdata->d_buf, ctfdata->d_size, si, label); in read_file()
118 symit_free(si); in read_file()
345 symit_data_t *si; in symit_new() local
352 si = xcalloc(sizeof (symit_data_t)); in symit_new()
355 gelf_getshdr(scn, &si->si_shdr) == NULL || in symit_new()
356 (si->si_symd = elf_getdata(scn, NULL)) == NULL) in symit_new()
359 if ((scn = elf_getscn(elf, si->si_shdr.sh_link)) == NULL || in symit_new()
360 (si->si_strd = elf_getdata(scn, NULL)) == NULL) in symit_new()
363 si->si_nument = si->si_shdr.sh_size / si->si_shdr.sh_entsize; in symit_new()
365 return (si); in symit_new()
369 symit_free(symit_data_t *si) in symit_free() argument
371 free(si); in symit_free()
375 symit_reset(symit_data_t *si) in symit_reset() argument
377 si->si_next = 0; in symit_reset()
381 symit_curfile(symit_data_t *si) in symit_curfile() argument
383 return (si->si_curfile); in symit_curfile()
387 symit_next(symit_data_t *si, int type) in symit_next() argument
393 for (; si->si_next < si->si_nument; si->si_next++) { in symit_next()
394 gelf_getsym(si->si_symd, si->si_next, &si->si_cursym); in symit_next()
395 gelf_getsym(si->si_symd, si->si_next, &sym); in symit_next()
396 si->si_curname = (caddr_t)si->si_strd->d_buf + sym.st_name; in symit_next()
399 bname = strrchr(si->si_curname, '/'); in symit_next()
400 si->si_curfile = bname == NULL ? si->si_curname : bname + 1; in symit_next()
407 if (check_sym && ignore_symbol(&sym, si->si_curname)) in symit_next()
410 si->si_next++; in symit_next()
412 return (&si->si_cursym); in symit_next()
419 symit_name(symit_data_t *si) in symit_name() argument
421 return (si->si_curname); in symit_name()