return;
}
- if (!B.isInCurrentDSO())
+ if (!B.isInCurrentOutput())
for (InputSectionBase *Sec : CNamedSections.lookup(B.getName()))
Fn(Sec, 0);
}
Symbol *Real = &Origs[I];
// If __real_foo was undefined, we don't want it in the symbol table.
- if (!Real->body()->isInCurrentDSO())
+ if (!Real->body()->isInCurrentOutput())
continue;
auto *NewSym = make<Symbol>();
}
if (Binding != STB_WEAK) {
SymbolBody *B = S->body();
- if (!B->isInCurrentDSO())
+ if (!B->isInCurrentOutput())
S->Binding = Binding;
if (auto *SS = dyn_cast<SharedSymbol>(B))
SS->getFile<ELFT>()->IsUsed = true;
if (WasInserted)
return 1;
SymbolBody *Body = S->body();
- if (!Body->isInCurrentDSO())
+ if (!Body->isInCurrentOutput())
return 1;
if (int R = compareVersion(S, Name))
DemangledSyms.emplace();
for (Symbol *Sym : SymVector) {
SymbolBody *B = Sym->body();
- if (!B->isInCurrentDSO())
+ if (!B->isInCurrentOutput())
continue;
if (Optional<std::string> S = demangle(B->getName()))
(*DemangledSyms)[*S].push_back(B);
if (Ver.IsExternCpp)
return getDemangledSyms().lookup(Ver.Name);
if (SymbolBody *B = find(Ver.Name))
- if (B->isInCurrentDSO())
+ if (B->isInCurrentOutput())
return {B};
return {};
}
for (Symbol *Sym : SymVector) {
SymbolBody *B = Sym->body();
- if (B->isInCurrentDSO() && M.match(B->getName()))
+ if (B->isInCurrentOutput() && M.match(B->getName()))
Res.push_back(B);
}
return Res;
Name = {S.data(), Pos};
// If this is not in this DSO, it is not a definition.
- if (!isInCurrentDSO())
+ if (!isInCurrentOutput())
return;
// '@@' in a symbol name means the default version.
return Binding;
if (Visibility != STV_DEFAULT && Visibility != STV_PROTECTED)
return STB_LOCAL;
- if (VersionId == VER_NDX_LOCAL && body()->isInCurrentDSO())
+ if (VersionId == VER_NDX_LOCAL && body()->isInCurrentOutput())
return STB_LOCAL;
if (Config->NoGnuUnique && Binding == STB_GNU_UNIQUE)
return STB_GLOBAL;
return false;
if (computeBinding() == STB_LOCAL)
return false;
- if (!body()->isInCurrentDSO())
+ if (!body()->isInCurrentOutput())
return true;
return ExportDynamic;
}
return SymbolKind == LazyArchiveKind || SymbolKind == LazyObjectKind;
}
- bool isInCurrentDSO() const {
+ bool isInCurrentOutput() const {
return SymbolKind == DefinedRegularKind || SymbolKind == DefinedCommonKind;
}
}
if (SymbolBody *B = Symtab->find(Config->Init))
- if (B->isInCurrentDSO())
+ if (B->isInCurrentOutput())
add({DT_INIT, B});
if (SymbolBody *B = Symtab->find(Config->Fini))
- if (B->isInCurrentDSO())
+ if (B->isInCurrentOutput())
add({DT_FINI, B});
bool HasVerNeed = In<ELFT>::VerNeed->getNeedNum() != 0;
// linker has to look them up, so they have to be in the hash table.
if (auto *SS = dyn_cast<SharedSymbol>(S.Symbol))
return SS->CopyRelSec == nullptr && !SS->NeedsPltAddr;
- return !S.Symbol->isInCurrentDSO();
+ return !S.Symbol->isInCurrentOutput();
});
if (Mid == V.end())
return;
addOptionalRegular(StringRef Name, SectionBase *Sec, uint64_t Val,
uint8_t StOther = STV_HIDDEN, uint8_t Binding = STB_GLOBAL) {
SymbolBody *S = Symtab->find(Name);
- if (!S || S->isInCurrentDSO())
+ if (!S || S->isInCurrentOutput())
return nullptr;
Symbol *Sym = Symtab->addRegular<ELFT>(Name, StOther, STT_NOTYPE, Val,
/*Size=*/0, Binding, Sec,
// At this point copy relocations have not been created yet, so any
// symbol that is not defined locally is preemptible.
- if (!B.isInCurrentDSO())
+ if (!B.isInCurrentOutput())
return true;
// If we have a dynamic list it specifies which local symbols are preemptible.