Lines Matching refs:ELFT

302 template <class ELFT> static void doParseFile(InputFile *file) {  in doParseFile()
312 cast<ObjFile<ELFT>>(file)->parseLazy(); in doParseFile()
322 cast<ObjFile<ELFT>>(file)->parse(); in doParseFile()
324 f->parse<ELFT>(); in doParseFile()
344 template <class ELFT>
352 doParseFile<ELFT>(files[i]); in doParseFiles()
355 cast<ObjFile<ELFT>>(*armCmseImpLib).importCmseSymbols(); in doParseFiles()
373 template <class ELFT>
374 static std::string getSrcMsgAux(ObjFile<ELFT> &file, const Symbol &sym, in getSrcMsgAux()
441 template <class ELFT>
443 ArrayRef<typename ELFT::Word> entries) { in handleSectionGroup()
477 template <class ELFT> DWARFCache *ObjFile<ELFT>::getDwarf() { in getDwarf()
480 std::make_unique<LLDDwarfObj<ELFT>>(this), "", in getDwarf()
492 template <class ELFT>
494 ObjFile<ELFT>::getVariableLoc(StringRef name) { in getVariableLoc()
500 template <class ELFT>
502 ObjFile<ELFT>::getDILineInfo(const InputSectionBase *s, uint64_t offset) { in getDILineInfo()
548 template <class ELFT> void ELFFileBase::init(InputFile::Kind k) { in init()
549 using Elf_Shdr = typename ELFT::Shdr; in init()
550 using Elf_Sym = typename ELFT::Sym; in init()
553 const ELFFile<ELFT> &obj = getObj<ELFT>(); in init()
581 template <class ELFT>
582 uint32_t ObjFile<ELFT>::getSectionIndex(const Elf_Sym &sym) const { in getSectionIndex()
584 this->getObj().getSectionIndex(sym, getELFSyms<ELFT>(), shndxTable), in getSectionIndex()
588 template <class ELFT> void ObjFile<ELFT>::parse(bool ignoreComdats) { in parse()
589 object::ELFFile<ELFT> obj = this->getObj(); in parse()
599 ArrayRef<Elf_Shdr> objSections = getELFShdrs<ELFT>(); in parse()
700 template <class ELFT>
701 StringRef ObjFile<ELFT>::getShtGroupSignature(ArrayRef<Elf_Shdr> sections, in getShtGroupSignature()
703 typename ELFT::SymRange symbols = this->getELFSyms<ELFT>(); in getShtGroupSignature()
706 const typename ELFT::Sym &sym = symbols[sec.sh_info]; in getShtGroupSignature()
710 template <class ELFT>
711 bool ObjFile<ELFT>::shouldMerge(const Elf_Shdr &sec, StringRef name) { in shouldMerge()
763 template <class ELFT> void ObjFile<ELFT>::initializeJustSymbols() { in initializeJustSymbols()
776 template <class ELFT>
777 void ObjFile<ELFT>::initializeSections(bool ignoreComdats, in initializeSections()
778 const llvm::object::ELFFile<ELFT> &obj) { in initializeSections()
779 ArrayRef<Elf_Shdr> objSections = getELFShdrs<ELFT>(); in initializeSections()
819 cantFail(this->getELFSyms<ELFT>()[sec.sh_info].getName(stringTable)); in initializeSections()
948 handleSectionGroup<ELFT>(this->sections, entries); in initializeSections()
956 template <class ELFT>
957 void readGnuProperty(const InputSection &sec, ObjFile<ELFT> &f) { in readGnuProperty()
958 using Elf_Nhdr = typename ELFT::Nhdr; in readGnuProperty()
959 using Elf_Note = typename ELFT::Note; in readGnuProperty()
989 uint32_t type = read32<ELFT::Endianness>(desc.data()); in readGnuProperty()
990 uint32_t size = read32<ELFT::Endianness>(desc.data() + 4); in readGnuProperty()
1001 f.andFeatures |= read32<ELFT::Endianness>(desc.data()); in readGnuProperty()
1017 desc = desc.slice(alignTo<(ELFT::Is64Bits ? 8 : 4)>(size)); in readGnuProperty()
1025 template <class ELFT>
1026 InputSectionBase *ObjFile<ELFT>::getRelocTarget(uint32_t idx, uint32_t info) { in getRelocTarget()
1047 template <class ELFT>
1048 InputSectionBase *ObjFile<ELFT>::createInputSection(uint32_t idx, in createInputSection()
1077 readGnuProperty<ELFT>(InputSection(*this, sec, name), *this); in createInputSection()
1125 template <class ELFT>
1126 void ObjFile<ELFT>::initializeSymbols(const object::ELFFile<ELFT> &obj) { in initializeSymbols()
1127 ArrayRef<Elf_Sym> eSyms = this->getELFSyms<ELFT>(); in initializeSymbols()
1187 template <class ELFT>
1188 void ObjFile<ELFT>::initSectionsAndLocalSyms(bool ignoreComdats) { in initSectionsAndLocalSyms()
1197 ArrayRef<Elf_Sym> eSyms = this->getELFSyms<ELFT>(); in initSectionsAndLocalSyms()
1202 secIdx = check(getExtendedSymbolTableIndex<ELFT>(eSym, i, shndxTable)); in initSectionsAndLocalSyms()
1233 template <class ELFT> void ObjFile<ELFT>::postParse() { in postParse()
1235 ArrayRef<Elf_Sym> eSyms = this->getELFSyms<ELFT>(); in postParse()
1262 secIdx = check(getExtendedSymbolTableIndex<ELFT>(eSym, i, shndxTable)); in postParse()
1328 template <class ELFT>
1331 ObjFile<ELFT> *obj = make<ObjFile<ELFT>>(ekind, mb, archiveName); in isNonCommonDef()
1335 for (auto sym : obj->template getGlobalELFSyms<ELFT>()) { in isNonCommonDef()
1369 template <typename ELFT>
1371 parseVerdefs(const uint8_t *base, const typename ELFT::Shdr *sec) { in parseVerdefs()
1380 auto *curVerdef = reinterpret_cast<const typename ELFT::Verdef *>(verdef); in parseVerdefs()
1394 template <typename ELFT>
1395 std::vector<uint32_t> SharedFile::parseVerneed(const ELFFile<ELFT> &obj, in parseVerneed()
1396 const typename ELFT::Shdr *sec) { in parseVerneed()
1403 if (verneedBuf + sizeof(typename ELFT::Verneed) > data.end()) in parseVerneed()
1405 auto *vn = reinterpret_cast<const typename ELFT::Verneed *>(verneedBuf); in parseVerneed()
1408 if (vernauxBuf + sizeof(typename ELFT::Vernaux) > data.end()) in parseVerneed()
1410 auto *aux = reinterpret_cast<const typename ELFT::Vernaux *>(vernauxBuf); in parseVerneed()
1428 template <typename ELFT>
1429 static uint64_t getAlignment(ArrayRef<typename ELFT::Shdr> sections, in getAlignment()
1430 const typename ELFT::Sym &sym) { in getAlignment()
1454 template <class ELFT> void SharedFile::parse() { in parse()
1455 using Elf_Dyn = typename ELFT::Dyn; in parse()
1456 using Elf_Shdr = typename ELFT::Shdr; in parse()
1457 using Elf_Sym = typename ELFT::Sym; in parse()
1458 using Elf_Verdef = typename ELFT::Verdef; in parse()
1459 using Elf_Versym = typename ELFT::Versym; in parse()
1462 const ELFFile<ELFT> obj = this->getObj<ELFT>(); in parse()
1463 ArrayRef<Elf_Shdr> sections = getELFShdrs<ELFT>(); in parse()
1526 verdefs = parseVerdefs<ELFT>(obj.base(), verdefSec); in parse()
1527 std::vector<uint32_t> verneeds = parseVerneed<ELFT>(obj, verneedSec); in parse()
1549 ArrayRef<Elf_Sym> syms = this->getGlobalELFSyms<ELFT>(); in parse()
1602 uint32_t alignment = getAlignment<ELFT>(sections, sym); in parse()
1883 template <class ELFT> void ObjFile<ELFT>::parseLazy() { in parseLazy()
1884 const ArrayRef<typename ELFT::Sym> eSyms = this->getELFSyms<ELFT>(); in parseLazy()