Lines Matching refs:sym

103   for (const Archive::Symbol &sym : file->symbols())  in parse()  local
104 ctx.symtab.addLazyArchive(this, sym); in parse()
108 void ArchiveFile::addMember(const Archive::Symbol &sym) { in addMember() argument
110 CHECK(sym.getMember(), in addMember()
111 "could not get the member for symbol " + toCOFFString(sym)); in addMember()
117 driver->enqueueArchiveMember(c, sym, getName()); in addMember()
281 COFFSymbolRef sym, const coff_aux_section_definition *def) { in readAssociativeDefinition() argument
282 readAssociativeDefinition(sym, def, def->getNumber(sym.isBigObj())); in readAssociativeDefinition()
285 void ObjFile::readAssociativeDefinition(COFFSymbolRef sym, in readAssociativeDefinition() argument
289 int32_t sectionNumber = sym.getSectionNumber(); in readAssociativeDefinition()
292 StringRef name = check(coffObj->getSymbolName(sym)); in readAssociativeDefinition()
326 COFFSymbolRef sym, DenseMap<StringRef, uint32_t> &prevailingSectionMap) { in recordPrevailingSymbolForMingw() argument
334 int32_t sectionNumber = sym.getSectionNumber(); in recordPrevailingSymbolForMingw()
343 COFFSymbolRef sym, const coff_aux_section_definition *def, in maybeAssociateSEHForMingw() argument
345 StringRef name = check(coffObj->getSymbolName(sym)); in maybeAssociateSEHForMingw()
352 readAssociativeDefinition(sym, def, parentSym->second); in maybeAssociateSEHForMingw()
356 Symbol *ObjFile::createRegular(COFFSymbolRef sym) { in createRegular() argument
357 SectionChunk *sc = sparseChunks[sym.getSectionNumber()]; in createRegular()
358 if (sym.isExternal()) { in createRegular()
359 StringRef name = check(coffObj->getSymbolName(sym)); in createRegular()
361 return ctx.symtab.addRegular(this, name, sym.getGeneric(), sc, in createRegular()
362 sym.getValue()); in createRegular()
374 /*IsExternal*/ false, sym.getGeneric(), sc); in createRegular()
419 COFFSymbolRef sym = check(coffObj->getSymbol(i)); in initializeSymbols() local
420 if (const coff_aux_section_definition *def = sym.getSectionDefinition()) { in initializeSymbols()
422 readAssociativeDefinition(sym, def); in initializeSymbols()
424 maybeAssociateSEHForMingw(sym, def, prevailingSectionMap); in initializeSymbols()
426 if (sparseChunks[sym.getSectionNumber()] == pendingComdat) { in initializeSymbols()
427 StringRef name = check(coffObj->getSymbolName(sym)); in initializeSymbols()
432 symbols[i] = createRegular(sym); in initializeSymbols()
436 Symbol *sym = kv.first; in initializeSymbols() local
438 checkAndSetWeakAlias(&ctx.symtab, this, sym, symbols[idx]); in initializeSymbols()
445 Symbol *ObjFile::createUndefined(COFFSymbolRef sym) { in createUndefined() argument
446 StringRef name = check(coffObj->getSymbolName(sym)); in createUndefined()
447 return ctx.symtab.addUndefined(name, this, sym.isWeakExternal()); in createUndefined()
454 COFFSymbolRef sym = check(obj->getSymbol(i)); in findSectionDef() local
455 if (sym.getSectionNumber() != section) in findSectionDef()
457 if (const coff_aux_section_definition *def = sym.getSectionDefinition()) in findSectionDef()
464 COFFSymbolRef sym, COMDATType &selection, bool &prevailing, in handleComdatSelection() argument
531 if (leaderChunk->getSize() != getSection(sym)->SizeOfRawData) { in handleComdatSelection()
546 SectionChunk newChunk(this, getSection(sym)); in handleComdatSelection()
551 ctx.symtab.reportDuplicate(leader, this, &newChunk, sym.getValue()); in handleComdatSelection()
563 if (leaderChunk->getSize() < getSection(sym)->SizeOfRawData) { in handleComdatSelection()
565 StringRef name = check(coffObj->getSymbolName(sym)); in handleComdatSelection()
573 /*IsExternal*/ true, sym.getGeneric(), in handleComdatSelection()
585 COFFSymbolRef sym, in createDefined() argument
589 auto getName = [&]() { return check(coffObj->getSymbolName(sym)); }; in createDefined()
591 if (sym.isCommon()) { in createDefined()
592 auto *c = make<CommonChunk>(sym); in createDefined()
594 return ctx.symtab.addCommon(this, getName(), sym.getValue(), in createDefined()
595 sym.getGeneric(), c); in createDefined()
598 if (sym.isAbsolute()) { in createDefined()
602 feat00Flags = sym.getValue(); in createDefined()
607 if (sym.isExternal()) in createDefined()
608 return ctx.symtab.addAbsolute(name, sym); in createDefined()
609 return make<DefinedAbsolute>(name, sym); in createDefined()
612 int32_t sectionNumber = sym.getSectionNumber(); in createDefined()
639 if (sym.isExternal()) { in createDefined()
641 ctx.symtab.addComdat(this, getName(), sym.getGeneric()); in createDefined()
644 /*IsExternal*/ false, sym.getGeneric()); in createDefined()
658 handleComdatSelection(sym, selection, prevailing, leader, def); in createDefined()
663 c->sym = cast<DefinedRegular>(leader); in createDefined()
675 if (const coff_aux_section_definition *def = sym.getSectionDefinition()) { in createDefined()
682 return createRegular(sym); in createDefined()
723 Expected<CVSymbol> sym = readSymbolFromStream(ss.getRecordData(), offset); in initializeFlags() local
724 if (!sym) { in initializeFlags()
725 consumeError(sym.takeError()); in initializeFlags()
728 if (sym->kind() == SymbolKind::S_COMPILE3) { in initializeFlags()
730 cantFail(SymbolDeserializer::deserializeAs<Compile3Sym>(sym.get())); in initializeFlags()
734 if (sym->kind() == SymbolKind::S_OBJNAME) { in initializeFlags()
736 sym.get())); in initializeFlags()
739 offset += sym->length(); in initializeFlags()
1046 Symbol *sym; in parse() local
1053 sym = ctx.symtab.addUndefined(symName, this, false); in parse()
1055 sym = ctx.symtab.addCommon(this, symName, objSym.getCommonSize()); in parse()
1058 sym = ctx.symtab.addUndefined(symName, this, true); in parse()
1061 checkAndSetWeakAlias(&ctx.symtab, this, sym, alias); in parse()
1064 sym = comdat[comdatIndex].first; in parse()
1065 if (cast<DefinedRegular>(sym)->data == nullptr) in parse()
1066 cast<DefinedRegular>(sym)->data = &fakeSC->repl; in parse()
1068 sym = ctx.symtab.addRegular(this, symName, nullptr, fakeSC); in parse()
1070 sym = ctx.symtab.addUndefined(symName, this, false); in parse()
1073 sym = ctx.symtab.addRegular(this, symName, nullptr, fakeSC); in parse()
1075 symbols.push_back(sym); in parse()
1077 config->gcroot.push_back(sym); in parse()
1083 for (const lto::InputFile::Symbol &sym : obj->symbols()) in parseLazy() local
1084 if (!sym.isUndefined()) in parseLazy()
1085 ctx.symtab.addLazyObject(this, sym.getName()); in parseLazy()