Lines Matching refs:Section

410 static bool isRequiredForExecution(const SectionRef Section) {  in isRequiredForExecution()  argument
411 const ObjectFile *Obj = Section.getObject(); in isRequiredForExecution()
413 return ELFSectionRef(Section).getFlags() & ELF::SHF_ALLOC; in isRequiredForExecution()
415 const coff_section *CoffSection = COFFObj->getCOFFSection(Section); in isRequiredForExecution()
433 static bool isReadOnlyData(const SectionRef Section) { in isReadOnlyData() argument
434 const ObjectFile *Obj = Section.getObject(); in isReadOnlyData()
436 return !(ELFSectionRef(Section).getFlags() & in isReadOnlyData()
439 return ((COFFObj->getCOFFSection(Section)->Characteristics & in isReadOnlyData()
451 static bool isZeroInit(const SectionRef Section) { in isZeroInit() argument
452 const ObjectFile *Obj = Section.getObject(); in isZeroInit()
454 return ELFSectionRef(Section).getType() == ELF::SHT_NOBITS; in isZeroInit()
456 return COFFObj->getCOFFSection(Section)->Characteristics & in isZeroInit()
460 unsigned SectionType = MachO->getSectionType(Section); in isZeroInit()
483 const SectionRef &Section = *SI; in computeTotalAllocSize() local
485 bool IsRequired = isRequiredForExecution(Section) || ProcessAllSections; in computeTotalAllocSize()
489 uint64_t DataSize = Section.getSize(); in computeTotalAllocSize()
490 uint64_t Alignment64 = Section.getAlignment(); in computeTotalAllocSize()
492 bool IsCode = Section.isText(); in computeTotalAllocSize()
493 bool IsReadOnly = isReadOnlyData(Section); in computeTotalAllocSize()
496 if (auto EC = Section.getName(Name)) in computeTotalAllocSize()
499 uint64_t StubBufSize = computeSectionStubBufSize(Obj, Section); in computeTotalAllocSize()
588 const SectionRef &Section) { in computeSectionStubBufSize() argument
600 if (!(RelSecI == Section)) in computeSectionStubBufSize()
609 uint64_t DataSize = Section.getSize(); in computeSectionStubBufSize()
610 uint64_t Alignment64 = Section.getAlignment(); in computeSectionStubBufSize()
714 const SectionRef &Section, in emitSection() argument
717 uint64_t Alignment64 = Section.getAlignment(); in emitSection()
722 bool IsRequired = isRequiredForExecution(Section); in emitSection()
723 bool IsVirtual = Section.isVirtual(); in emitSection()
724 bool IsZeroInit = isZeroInit(Section); in emitSection()
725 bool IsReadOnly = isReadOnlyData(Section); in emitSection()
726 uint64_t DataSize = Section.getSize(); in emitSection()
729 if (auto EC = Section.getName(Name)) in emitSection()
732 StubBufSize = computeSectionStubBufSize(Obj, Section); in emitSection()
750 if (auto EC = Section.getContents(data)) in emitSection()
828 const SectionRef &Section, in findOrEmitSection() argument
833 ObjSectionToIDMap::iterator i = LocalSections.find(Section); in findOrEmitSection()
837 if (auto SectionIDOrErr = emitSection(Obj, Section, IsCode)) in findOrEmitSection()
841 LocalSections[Section] = SectionID; in findOrEmitSection()