Lines Matching refs:sym

34   Symbol *sym;  in insert()  local
37 sym = symVector[p.first->second]; in insert()
40 sym = reinterpret_cast<Symbol *>(make<SymbolUnion>()); in insert()
41 symVector.push_back(sym); in insert()
44 sym->isUsedInRegularObj |= !file || isa<ObjFile>(file); in insert()
45 return {sym, p.second}; in insert()
205 const object::Archive::Symbol &sym) { in addLazyArchive() argument
211 replaceSymbol<LazyArchive>(s, file, sym); in addLazyArchive()
213 file->fetch(sym); in addLazyArchive()
217 file->fetch(sym); in addLazyArchive()
219 replaceSymbol<LazyArchive>(s, file, sym); in addLazyArchive()
264 static Defined *createBoundarySymbol(const Undefined &sym) { in createBoundarySymbol() argument
266 sym.getName(), /*isec=*/nullptr, /*value=*/-1, /*isPrivateExtern=*/true, in createBoundarySymbol()
270 static void handleSectionBoundarySymbol(const Undefined &sym, StringRef segSect, in handleSectionBoundarySymbol() argument
296 assert(sym.isLive()); in handleSectionBoundarySymbol()
306 osec->sectionStartSymbols.push_back(createBoundarySymbol(sym)); in handleSectionBoundarySymbol()
308 osec->sectionEndSymbols.push_back(createBoundarySymbol(sym)); in handleSectionBoundarySymbol()
311 static void handleSegmentBoundarySymbol(const Undefined &sym, StringRef segName, in handleSegmentBoundarySymbol() argument
315 seg->segmentStartSymbols.push_back(createBoundarySymbol(sym)); in handleSegmentBoundarySymbol()
317 seg->segmentEndSymbols.push_back(createBoundarySymbol(sym)); in handleSegmentBoundarySymbol()
322 static bool recoverFromUndefinedSymbol(const Undefined &sym) { in recoverFromUndefinedSymbol() argument
324 StringRef name = sym.getName(); in recoverFromUndefinedSymbol()
326 handleSectionBoundarySymbol(sym, name, Boundary::Start); in recoverFromUndefinedSymbol()
330 handleSectionBoundarySymbol(sym, name, Boundary::End); in recoverFromUndefinedSymbol()
334 handleSegmentBoundarySymbol(sym, name, Boundary::Start); in recoverFromUndefinedSymbol()
338 handleSegmentBoundarySymbol(sym, name, Boundary::End); in recoverFromUndefinedSymbol()
347 if (config->explicitDynamicLookups.count(sym.getName())) { in recoverFromUndefinedSymbol()
348 symtab->addDynamicLookup(sym.getName()); in recoverFromUndefinedSymbol()
356 symtab->addDynamicLookup(sym.getName()); in recoverFromUndefinedSymbol()
362 symtab->addDynamicLookup(sym.getName()); in recoverFromUndefinedSymbol()
433 void macho::treatUndefinedSymbol(const Undefined &sym, StringRef source) { in treatUndefinedSymbol() argument
434 if (recoverFromUndefinedSymbol(sym)) in treatUndefinedSymbol()
437 undefs[&sym].otherReferences.push_back(source.str()); in treatUndefinedSymbol()
440 void macho::treatUndefinedSymbol(const Undefined &sym, const InputSection *isec, in treatUndefinedSymbol() argument
442 if (recoverFromUndefinedSymbol(sym)) in treatUndefinedSymbol()
445 undefs[&sym].codeReferences.push_back({isec, offset}); in treatUndefinedSymbol()