Lines Matching refs:sym

46 std::string lld::toString(const elf::Symbol &sym) {  in toString()  argument
47 StringRef name = sym.getName(); in toString()
50 const char *suffix = sym.getVersionSuffix(); in toString()
73 static uint64_t getSymVA(const Symbol &sym, int64_t addend) { in getSymVA() argument
74 switch (sym.kind()) { in getSymVA()
76 auto &d = cast<Defined>(sym); in getSymVA()
125 ((sym.stOther & STO_MIPS_MICROMIPS) || sym.needsCopy)) in getSymVA()
289 void elf::printTraceSymbol(const Symbol &sym, StringRef name) { in printTraceSymbol() argument
291 if (sym.isUndefined()) in printTraceSymbol()
293 else if (sym.isLazy()) in printTraceSymbol()
295 else if (sym.isShared()) in printTraceSymbol()
297 else if (sym.isCommon()) in printTraceSymbol()
302 message(toString(sym.file) + s + name); in printTraceSymbol()
306 const InputFile &extracted, const Symbol &sym) { in recordWhyExtract() argument
307 ctx->whyExtractRecords.emplace_back(toString(reference), &extracted, sym); in recordWhyExtract()
310 void elf::maybeWarnUnorderableSymbol(const Symbol *sym) { in maybeWarnUnorderableSymbol() argument
319 if (sym->isUndefined() && in maybeWarnUnorderableSymbol()
323 const InputFile *file = sym->file; in maybeWarnUnorderableSymbol()
324 auto *d = dyn_cast<Defined>(sym); in maybeWarnUnorderableSymbol()
326 auto report = [&](StringRef s) { warn(toString(file) + s + sym->getName()); }; in maybeWarnUnorderableSymbol()
328 if (sym->isUndefined()) in maybeWarnUnorderableSymbol()
330 else if (sym->isShared()) in maybeWarnUnorderableSymbol()
342 bool elf::computeIsPreemptible(const Symbol &sym) { in computeIsPreemptible() argument
343 assert(!sym.isLocal() || sym.isPlaceholder()); in computeIsPreemptible()
347 if (!sym.includeInDynsym() || sym.visibility != STV_DEFAULT) in computeIsPreemptible()
352 if (!sym.isDefined()) in computeIsPreemptible()
363 (config->bsymbolic == BsymbolicKind::Functions && sym.isFunc()) || in computeIsPreemptible()
364 (config->bsymbolic == BsymbolicKind::NonWeakFunctions && sym.isFunc() && in computeIsPreemptible()
365 sym.binding != STB_WEAK)) in computeIsPreemptible()
366 return sym.inDynamicList; in computeIsPreemptible()
559 void elf::reportDuplicate(const Symbol &sym, const InputFile *newFile, in reportDuplicate() argument
566 const Defined *d = dyn_cast<Defined>(&sym); in reportDuplicate()
573 error("duplicate symbol: " + toString(sym) + "\n>>> defined in " + in reportDuplicate()
574 toString(sym.file) + "\n>>> defined in " + toString(newFile)); in reportDuplicate()
586 std::string src1 = sec1->getSrcMsg(sym, d->value); in reportDuplicate()
588 std::string src2 = errSec->getSrcMsg(sym, errOffset); in reportDuplicate()
591 std::string msg = "duplicate symbol: " + toString(sym) + "\n>>> defined at "; in reportDuplicate()