Lines Matching refs:sym
34 void SymbolTable::wrap(Symbol *sym, Symbol *real, Symbol *wrap) { in wrap() argument
36 int &idx1 = symMap[CachedHashStringRef(sym->getName())]; in wrap()
44 if (sym->isUsedInRegularObj) in wrap()
47 sym->isUsedInRegularObj = true; in wrap()
48 else if (!sym->isDefined()) in wrap()
52 sym->isUsedInRegularObj = false; in wrap()
61 memcpy(real, sym, sizeof(SymbolUnion)); in wrap()
80 Symbol *sym = symVector[p.first->second]; in insert() local
82 sym->setName(name); in insert()
83 sym->hasVersionSuffix = true; in insert()
85 return sym; in insert()
88 Symbol *sym = reinterpret_cast<Symbol *>(make<SymbolUnion>()); in insert() local
89 symVector.push_back(sym); in insert()
92 memset(sym, 0, sizeof(Symbol)); in insert()
93 sym->setName(name); in insert()
94 sym->partition = 1; in insert()
95 sym->verdefIndex = -1; in insert()
96 sym->gwarn = false; in insert()
97 sym->versionId = VER_NDX_GLOBAL; in insert()
99 sym->hasVersionSuffix = true; in insert()
100 return sym; in insert()
106 Symbol *sym = insert(newSym.getName()); in addAndCheckDuplicate() local
107 if (sym->isDefined()) in addAndCheckDuplicate()
108 sym->checkDuplicate(newSym); in addAndCheckDuplicate()
109 sym->resolve(newSym); in addAndCheckDuplicate()
110 sym->isUsedInRegularObj = true; in addAndCheckDuplicate()
111 return sym; in addAndCheckDuplicate()
124 static bool canBeVersioned(const Symbol &sym) { in canBeVersioned() argument
125 return sym.isDefined() || sym.isCommon() || sym.isLazy(); in canBeVersioned()
145 for (Symbol *sym : symVector) in getDemangledSyms()
146 if (canBeVersioned(*sym)) { in getDemangledSyms()
147 StringRef name = sym->getName(); in getDemangledSyms()
156 (*demangledSyms)[demangled].push_back(sym); in getDemangledSyms()
165 if (Symbol *sym = find(ver.name)) in findByVersion() local
166 if (canBeVersioned(*sym)) in findByVersion()
167 return {sym}; in findByVersion()
185 for (Symbol *sym : p.second) in findAllByVersion()
186 if (check(sym->getName())) in findAllByVersion()
187 res.push_back(sym); in findAllByVersion()
191 for (Symbol *sym : symVector) in findAllByVersion()
192 if (canBeVersioned(*sym) && check(sym->getName()) && in findAllByVersion()
193 m.match(sym->getName())) in findAllByVersion()
194 res.push_back(sym); in findAllByVersion()
206 for (Symbol *sym : syms) in handleDynamicList()
207 sym->inDynamicList = true; in handleDynamicList()
228 for (Symbol *sym : syms) { in assignExactVersion()
233 sym->getName().contains('@')) in assignExactVersion()
238 if (sym->verdefIndex == uint16_t(-1)) { in assignExactVersion()
239 sym->verdefIndex = 0; in assignExactVersion()
240 sym->versionId = versionId; in assignExactVersion()
242 if (sym->versionId == versionId) in assignExactVersion()
246 getName(sym->versionId) + " to " + getName(versionId)); in assignExactVersion()
256 for (Symbol *sym : findAllByVersion(ver, includeNonDefault)) in assignWildcardVersion()
257 if (sym->verdefIndex == uint16_t(-1)) { in assignWildcardVersion()
258 sym->verdefIndex = 0; in assignWildcardVersion()
259 sym->versionId = versionId; in assignWildcardVersion()
326 for (Symbol *sym : symVector) in scanVersionScript()
327 if (sym->hasVersionSuffix) in scanVersionScript()
328 sym->parseSymbolVersion(); in scanVersionScript()