• Home
  • Raw
  • Download

Lines Matching refs:shdr

550     bool ReadSymTab(const std::unique_ptr<ElfFile> &elfFile, const ELF::SectionHeader *shdr,  in ReadSymTab()  argument
554 if (!elfFile->ParseSymTable(shdr)) { in ReadSymTab()
558 HLOGV("Symbol Table:%s", shdr->secTypeName_.c_str()); in ReadSymTab()
578 std::string name = elfFile->GetStrPtr(shdr->link_, symbol->nameIndex_); in ReadSymTab()
600 const auto &shdr = shdrPair.second; in ParseShdr() local
602 elfFile->GetStrPtr(elfFile->ehdr_->shdrStrTabIdx_, shdr->nameIndex_); in ParseShdr()
603 const unsigned char *data = elfFile->GetSectionData(shdr->secIndex_); in ParseShdr()
609 sh_name, shdr->secVaddr_, shdr->fileOffset_, shdr->secSize_, shdr->secType_, in ParseShdr()
610 shdr->secTypeName_.c_str(), shdr->secIndex_, shdr->link_, shdr->secEntrySize_); in ParseShdr()
612 shdrMap_.emplace(sh_name, ShdrInfo(shdr->secVaddr_, shdr->secSize_, shdr->fileOffset_)); in ParseShdr()
614 if (shdr->secType_ == SHT_PROGBITS) { in ParseShdr()
616 LoadEhFrameHDR(data, shdr->secSize_, shdr->fileOffset_); in ParseShdr()
624 void AddSectionAsSymbol(const std::unique_ptr<ELF::SectionHeader> &shdr, const char *name, in AddSectionAsSymbol() argument
628 shdr->secVaddr_, shdr->secSize_); in AddSectionAsSymbol()
629 symbolsTable.emplace_back(shdr->secVaddr_, shdr->secSize_, name, name, filePath_); in AddSectionAsSymbol()
638 const auto &shdr = shdrPair.second; in ParseShdr() local
639 … const char *sh_name = elfFile->GetStrPtr(elfFile->ehdr_->shdrStrTabIdx_, shdr->nameIndex_); in ParseShdr()
640 const unsigned char *data = elfFile->GetSectionData(shdr->secIndex_); in ParseShdr()
647 sh_name, shdr->secVaddr_, shdr->fileOffset_, shdr->secSize_, shdr->secType_, in ParseShdr()
648 shdr->secTypeName_.c_str(), shdr->secIndex_, shdr->link_, shdr->secEntrySize_); in ParseShdr()
650 shdrMap_.emplace(sh_name, ShdrInfo(shdr->secVaddr_, shdr->secSize_, shdr->fileOffset_)); in ParseShdr()
651 switch (shdr->secType_) { in ParseShdr()
653 symTableShdr = shdr.get(); in ParseShdr()
658 symTableShdr = shdr.get(); in ParseShdr()
665 HLOGM("found NOTE_GNU_BUILD_ID size: %" PRIu64 "", shdr->secSize_); in ParseShdr()
668 buildIdFound = ElfGetBuildId(data, shdr->secSize_); in ParseShdr()
674 LoadEhFrameHDR(data, shdr->secSize_, shdr->fileOffset_); in ParseShdr()
681 AddSectionAsSymbol(shdr, sh_name, symbolsTable); in ParseShdr()
685 HLOGM("skip shdr.sh_type %" PRIx64 "", shdr->secType_); in ParseShdr()