Lines Matching defs:Sec
175 const typename ELFT::Shdr &Sec, StringRef Name) {
177 if (Sec.sh_type != ELF::SHT_HASH && Sec.sh_type != ELF::SHT_GNU_HASH)
184 auto SymTabOrErr = getSection<ELFT>(*SectionsOrError, Sec.sh_link);
201 if (Sec.sh_type == ELF::SHT_GNU_HASH) {
204 Sec.sh_offset);
205 if (Sec.sh_offset + Sec.sh_size >= Elf.getBufSize())
207 Twine(Sec.sh_offset));
208 if (Sec.sh_size < sizeof(typename ELFT::GnuHash) ||
209 Sec.sh_size <
214 return createError("section has invalid sh_size: " + Twine(Sec.sh_size));
225 if (Sec.sh_type == ELF::SHT_HASH) {
228 Sec.sh_offset);
229 if (Sec.sh_offset + Sec.sh_size >= Elf.getBufSize())
231 Twine(Sec.sh_offset));
232 if (Sec.sh_size < sizeof(typename ELFT::Hash) ||
233 Sec.sh_size < sizeof(typename ELFT::Hash) +
236 return createError("section has invalid sh_size: " + Twine(Sec.sh_size));
252 const typename ELFT::Shdr &Sec, StringRef Name) {
254 if (Sec.sh_type != ELF::SHT_SYMTAB && Sec.sh_type != ELF::SHT_DYNSYM)
261 auto StrTabOrErr = Elf.getStringTableForSymtab(Sec, *SectionsOrError);
266 auto SymsOrErr = Elf.symbols(&Sec);
273 return ELFObj.toSymbolRef(&Sec, &Sym - &SymTab[0]);
282 for (ELFSectionRef Sec : ELFObj.sections()) {
283 if (Sec.getType() != SHT_HASH && Sec.getType() != SHT_GNU_HASH)
286 auto HashTabOrErr = ELFObj.getELFFile().getSection(Sec.getIndex());
293 for (ELFSectionRef Sec : ELFObj.sections()) {
294 if (Sec.getType() != SHT_SYMTAB)
297 auto SymTabOrErr = ELFObj.getELFFile().getSection(Sec.getIndex());