Lines Matching refs:sym
33 void SymbolTable::wrap(Symbol *sym, Symbol *real, Symbol *wrap) { in wrap() argument
35 int &idx1 = symMap[CachedHashStringRef(sym->getName())]; in wrap()
43 if (sym->isUsedInRegularObj) in wrap()
46 sym->isUsedInRegularObj = true; in wrap()
47 else if (!sym->isDefined()) in wrap()
51 sym->isUsedInRegularObj = false; in wrap()
60 memcpy(real, sym, sizeof(SymbolUnion)); in wrap()
79 Symbol *sym = symVector[p.first->second]; in insert() local
81 sym->setName(name); in insert()
82 sym->hasVersionSuffix = true; in insert()
84 return sym; in insert()
87 Symbol *sym = reinterpret_cast<Symbol *>(make<SymbolUnion>()); in insert() local
88 symVector.push_back(sym); in insert()
92 sym->setName(name); in insert()
93 sym->symbolKind = Symbol::PlaceholderKind; in insert()
94 sym->partition = 1; in insert()
95 sym->visibility = STV_DEFAULT; in insert()
96 sym->isUsedInRegularObj = false; in insert()
97 sym->exportDynamic = false; in insert()
98 sym->inDynamicList = false; in insert()
99 sym->referenced = false; in insert()
100 sym->traced = false; in insert()
101 sym->scriptDefined = false; in insert()
102 sym->versionId = VER_NDX_GLOBAL; in insert()
104 sym->hasVersionSuffix = true; in insert()
105 return sym; in insert()
109 Symbol *sym = insert(newSym.getName()); in addSymbol() local
110 sym->resolve(newSym); in addSymbol()
111 return sym; in addSymbol()
117 Symbol *sym = insert(newSym.getName()); in addAndCheckDuplicate() local
118 if (sym->isDefined()) in addAndCheckDuplicate()
119 sym->checkDuplicate(newSym); in addAndCheckDuplicate()
120 sym->resolve(newSym); in addAndCheckDuplicate()
121 sym->isUsedInRegularObj = true; in addAndCheckDuplicate()
122 return sym; in addAndCheckDuplicate()
135 static bool canBeVersioned(const Symbol &sym) { in canBeVersioned() argument
136 return sym.isDefined() || sym.isCommon() || sym.isLazy(); in canBeVersioned()
156 for (Symbol *sym : symVector) in getDemangledSyms()
157 if (canBeVersioned(*sym)) { in getDemangledSyms()
158 StringRef name = sym->getName(); in getDemangledSyms()
168 (*demangledSyms)[demangled].push_back(sym); in getDemangledSyms()
177 if (Symbol *sym = find(ver.name)) in findByVersion() local
178 if (canBeVersioned(*sym)) in findByVersion()
179 return {sym}; in findByVersion()
197 for (Symbol *sym : p.second) in findAllByVersion()
198 if (check(sym->getName())) in findAllByVersion()
199 res.push_back(sym); in findAllByVersion()
203 for (Symbol *sym : symVector) in findAllByVersion()
204 if (canBeVersioned(*sym) && check(sym->getName()) && in findAllByVersion()
205 m.match(sym->getName())) in findAllByVersion()
206 res.push_back(sym); in findAllByVersion()
218 for (Symbol *sym : syms) in handleDynamicList()
219 sym->inDynamicList = true; in handleDynamicList()
240 for (Symbol *sym : syms) { in assignExactVersion()
245 sym->getName().contains('@')) in assignExactVersion()
250 if (sym->verdefIndex == uint16_t(-1)) { in assignExactVersion()
251 sym->verdefIndex = 0; in assignExactVersion()
252 sym->versionId = versionId; in assignExactVersion()
254 if (sym->versionId == versionId) in assignExactVersion()
258 getName(sym->versionId) + " to " + getName(versionId)); in assignExactVersion()
268 for (Symbol *sym : findAllByVersion(ver, includeNonDefault)) in assignWildcardVersion()
269 if (sym->verdefIndex == uint16_t(-1)) { in assignWildcardVersion()
270 sym->verdefIndex = 0; in assignWildcardVersion()
271 sym->versionId = versionId; in assignWildcardVersion()
338 for (Symbol *sym : symVector) in scanVersionScript()
339 if (sym->hasVersionSuffix) in scanVersionScript()
340 sym->parseSymbolVersion(); in scanVersionScript()