Lines Matching +defs:file +defs:end
40 return (toStr(ctx, sec->file) + ":(" + sec->name + ")").str();
49 static ArrayRef<uint8_t> getSectionContents(ObjFile<ELFT> &file,
53 return check(file.getObj().getSectionContents(hdr));
56 InputSectionBase::InputSectionBase(InputFile *file, StringRef name,
61 : SectionBase(sectionKind, file, name, type, flags, link, info, addralign,
83 Ctx &ctx = file->ctx;
99 InputSectionBase::InputSectionBase(ObjFile<ELFT> &file,
102 : InputSectionBase(&file, name, hdr.sh_type,
103 getFlags(file.ctx, hdr.sh_flags), hdr.sh_link,
105 getSectionContents(file, hdr), sectionKind) {
110 Err(getCtx()) << &file << ": section sh_addralign is too large";
146 auto *f = cast<ObjFile<ELFT>>(file);
195 Ctx &SectionBase::getCtx() const { return file->ctx; }
201 // For output sections we treat offset -1 as the end of the section.
290 return cast<InputSection>(file->getSections()[link]);
296 if (file->isInternal())
298 for (Symbol *b : file->getSymbols())
306 // Returns an object file location string. Used to construct an error message.
311 std::string filename = toStr(getCtx(), file);
332 if (sec.file->kind() != InputFile::ObjKind)
334 auto &file = cast<ELFFileBase>(*sec.file);
337 ArrayRef<InputSectionBase *> sections = file.getSections();
339 uint64_t sectionIndex = it != sections.end()
342 DWARFCache *dwarf = file.getDwarf();
350 s << file.sourceFile;
366 s << sec->file->getName() << ":(";
376 if (!sec->file->archiveName.empty())
377 s << (" in archive " + sec->file->archiveName).str();
383 : InputSection(source.file, source.name, source.type, source.flags,
417 ArrayRef<InputSectionBase *> sections = file->getSections();
427 if (file->isInternal() || !isStaticRelSecType(type))
429 ArrayRef<InputSectionBase *> sections = file->getSections();
442 llvm::make_range(sec->relocations.begin(), sec->relocations.end()));
448 const ObjFile<ELFT> &file;
452 getAddend<ELFT>(rel), &file.getRelocTargetSym(rel)};
462 MapRelIter(rawRels.end(), mapRel));
479 const ObjFile<ELFT> *file = getFile<ELFT>();
513 Elf_Shdr_Impl<ELFT> sec = file->template getELFShdrs<ELFT>()[secIdx];
515 << CHECK2(file->getObj().getSectionName(sec), file)
539 // individual "gp" values used by each input object file.
541 // addend and save it back to the file.
557 p->r_addend >= 0x8000 && sec->file->ppc32Got2) {
563 p->r_addend += sec->file->ppc32Got2->outSecOff;
700 std::equal_range(hiSec->relocs().begin(), hiSec->relocs().end(), hiReloc,
839 return r.sym->getVA(ctx, a) - ctx.in.mipsGot->getGp(file);
841 return ctx.in.mipsGot->getGp(file) + a;
850 uint64_t v = ctx.in.mipsGot->getGp(file) + a - p;
862 ctx.in.mipsGot->getPageEntryOffset(file, *r.sym, a) -
863 ctx.in.mipsGot->getGp(file);
870 ctx.in.mipsGot->getSymEntryOffset(file, *r.sym, a) -
871 ctx.in.mipsGot->getGp(file);
874 ctx.in.mipsGot->getGlobalDynOffset(file, *r.sym) -
875 ctx.in.mipsGot->getGp(file);
877 return ctx.in.mipsGot->getVA() + ctx.in.mipsGot->getTlsIndexOffset(file) -
878 ctx.in.mipsGot->getGp(file);
1039 const InputFile *f = this->file;
1040 for (auto it = rels.begin(), end = rels.end(); it != end; ++it) {
1056 if (++it != end &&
1203 std::vector<Defined *> functions(prologues.begin(), prologues.end());
1211 while (it != morestackCalls.end() && (*it)->offset < f->value)
1214 while (it != morestackCalls.end() && (*it)->offset < f->value + f->size) {
1235 uint8_t *end) {
1253 // If the callee's-file was compiled with split stack, nothing to do. In
1268 if (ctx.target->adjustPrologueForCrossSplitStack(buf + f->value, end,
1319 // Copy section contents from source object file to output file
1387 : "CIE/FDE ends past the end of the section";
1403 Err(file->ctx) << "corrupted .eh_frame: " << msg << "\n>>> defined in "
1435 const char *p = s.data(), *end = s.data() + s.size();
1436 if (!std::all_of(end - entSize, end, [](char c) { return c == 0; })) {
1447 } while (p != end);
1450 size_t size = findNull(StringRef(p, end - p), entSize);
1453 } while (p != end);