Lines Matching refs:def
389 struct symdef def = {};
420 if (def.sym && sym->st_info >> 4 == STB_WEAK)
422 def.sym = sym;
423 def.dso = dso;
427 return def;
442 struct symdef def;
468 def = (sym->st_info & 0xf) == STT_SECTION ? (struct symdef){.dso = dso, .sym = sym}
470 if (!def.sym && (sym->st_shndx != SHN_UNDEF || sym->st_info >> 4 != STB_WEAK)) {
478 def.sym = 0;
479 def.dso = dso;
497 sym_val = def.sym ? saddr(def.dso, def.sym->st_value) : 0;
498 tls_val = def.sym ? def.sym->st_value : 0;
520 *reloc_addr = def.sym ? (size_t)(def.dso->funcdescs + (def.sym - def.dso->syms)) : 0;
527 reloc_addr[1] = def.sym ? (size_t)def.dso->got : 0;
530 *reloc_addr = def.dso->tls_id;
537 *reloc_addr = tls_val + def.dso->tls.offset + addend;
541 *reloc_addr = tls_val - def.dso->tls.offset + addend;
544 *reloc_addr = def.dso->tls.offset - tls_val + addend;
550 if (runtime && def.dso->tls_id >= static_tls_cnt) {
557 new[0] = def.dso->tls_id;
564 reloc_addr[1] = tls_val + def.dso->tls.offset + addend;
566 reloc_addr[1] = tls_val - def.dso->tls.offset + addend;
2282 struct symdef def = find_sym(p, s, 0);
2283 if (!def.sym)
2285 if ((def.sym->st_info & 0xf) == STT_TLS)
2286 return __tls_get_addr((size_t[]){def.dso->tls_id, def.sym->st_value});
2287 return laddr(def.dso, def.sym->st_value);