• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-12-stable/contrib/llvm-project/llvm/lib/ObjectYAML/

Lines Matching defs:Doc

129   ELFYAML::Object &Doc;
219 static bool writeELF(raw_ostream &OS, ELFYAML::Object &Doc,
236 : Doc(D), ErrHandler(EH) {
237 std::vector<ELFYAML::Section *> Sections = Doc.getSections();
245 Doc.Chunks.insert(
246 Doc.Chunks.begin(),
251 if (Doc.Symbols)
255 if (Doc.DynamicSymbols)
267 Doc.Chunks.push_back(std::move(Sec));
282 Header.e_ident[EI_DATA] = Doc.Header.Data;
284 Header.e_ident[EI_OSABI] = Doc.Header.OSABI;
285 Header.e_ident[EI_ABIVERSION] = Doc.Header.ABIVersion;
286 Header.e_type = Doc.Header.Type;
287 Header.e_machine = Doc.Header.Machine;
289 Header.e_entry = Doc.Header.Entry;
290 Header.e_phoff = Doc.ProgramHeaders.size() ? sizeof(Header) : 0;
291 Header.e_flags = Doc.Header.Flags;
293 Header.e_phentsize = Doc.ProgramHeaders.size() ? sizeof(Elf_Phdr) : 0;
294 Header.e_phnum = Doc.ProgramHeaders.size();
297 Doc.Header.SHEntSize ? (uint16_t)*Doc.Header.SHEntSize : sizeof(Elf_Shdr);
303 Doc.Header.SHOff ? typename ELFT::uint(*Doc.Header.SHOff) : SHOff;
305 Doc.Header.SHNum ? (uint16_t)*Doc.Header.SHNum : Doc.getSections().size();
306 Header.e_shstrndx = Doc.Header.SHStrNdx ? (uint16_t)*Doc.Header.SHStrNdx
314 for (const auto &YamlPhdr : Doc.ProgramHeaders) {
408 SHeaders.resize(Doc.getSections().size());
411 for (const std::unique_ptr<ELFYAML::Chunk> &D : Doc.Chunks) {
568 if (IsStatic && Doc.Symbols)
569 Symbols = *Doc.Symbols;
570 else if (!IsStatic && Doc.DynamicSymbols)
571 Symbols = *Doc.DynamicSymbols;
577 (IsStatic && Doc.Symbols) || (!IsStatic && Doc.DynamicSymbols);
691 for (const std::unique_ptr<ELFYAML::Chunk> &D : Doc.Chunks)
721 for (auto &YamlPhdr : Doc.ProgramHeaders) {
784 static bool isMips64EL(const ELFYAML::Object &Doc) {
785 return Doc.Header.Machine == ELFYAML::ELF_EM(llvm::ELF::EM_MIPS) &&
786 Doc.Header.Class == ELFYAML::ELF_ELFCLASS(ELF::ELFCLASS64) &&
787 Doc.Header.Data == ELFYAML::ELF_ELFDATA(ELF::ELFDATA2LSB);
820 REntry.setSymbolAndType(SymIdx, Rel.Type, isMips64EL(Doc));
826 REntry.setSymbolAndType(SymIdx, Rel.Type, isMips64EL(Doc));
1331 for (size_t I = 0; I < Doc.Chunks.size(); ++I) {
1332 const std::unique_ptr<ELFYAML::Chunk> &C = Doc.Chunks[I];
1363 if (Doc.Symbols)
1364 Build(*Doc.Symbols, SymN2I);
1365 if (Doc.DynamicSymbols)
1366 Build(*Doc.DynamicSymbols, DynSymN2I);
1371 if (Doc.Symbols)
1372 for (const ELFYAML::Symbol &Sym : *Doc.Symbols)
1377 if (Doc.DynamicSymbols)
1378 for (const ELFYAML::Symbol &Sym : *Doc.DynamicSymbols)
1383 for (const ELFYAML::Chunk *Sec : Doc.getSections()) {
1404 bool ELFState<ELFT>::writeELF(raw_ostream &OS, ELFYAML::Object &Doc,
1406 ELFState<ELFT> State(Doc, EH);
1425 sizeof(Elf_Ehdr) + sizeof(Elf_Phdr) * Doc.ProgramHeaders.size();
1447 bool yaml2elf(llvm::ELFYAML::Object &Doc, raw_ostream &Out, ErrorHandler EH) {
1448 bool IsLE = Doc.Header.Data == ELFYAML::ELF_ELFDATA(ELF::ELFDATA2LSB);
1449 bool Is64Bit = Doc.Header.Class == ELFYAML::ELF_ELFCLASS(ELF::ELFCLASS64);
1452 return ELFState<object::ELF64LE>::writeELF(Out, Doc, EH);
1453 return ELFState<object::ELF64BE>::writeELF(Out, Doc, EH);
1456 return ELFState<object::ELF32LE>::writeELF(Out, Doc, EH);
1457 return ELFState<object::ELF32BE>::writeELF(Out, Doc, EH);