LLVM 20.0.0git
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
llvm::objcopy::elf::SRECSectionWriterBase Class Referenceabstract

#include "ObjCopy/ELF/ELFObject.h"

Inheritance diagram for llvm::objcopy::elf::SRECSectionWriterBase:
Inheritance graph
[legend]

Public Member Functions

 SRECSectionWriterBase (WritableMemoryBuffer &Buf, uint64_t StartOffset)
 
void writeRecords (uint32_t Entry)
 
uint64_t getBufferOffset () const
 
Error visit (const Section &S) override
 
Error visit (const OwnedDataSection &S) override
 
Error visit (const StringTableSection &S) override
 
Error visit (const DynamicRelocationSection &S) override
 
uint8_t getType () const
 
Error visit (const SymbolTableSection &Sec) override
 
Error visit (const RelocationSection &Sec) override
 
Error visit (const GnuDebugLinkSection &Sec) override
 
Error visit (const GroupSection &Sec) override
 
Error visit (const SectionIndexSection &Sec) override
 
Error visit (const CompressedSection &Sec) override
 
Error visit (const DecompressedSection &Sec) override
 
- Public Member Functions inherited from llvm::objcopy::elf::BinarySectionWriter
virtual ~BinarySectionWriter ()
 
Error visit (const SymbolTableSection &Sec) override
 
Error visit (const RelocationSection &Sec) override
 
Error visit (const GnuDebugLinkSection &Sec) override
 
Error visit (const GroupSection &Sec) override
 
Error visit (const SectionIndexSection &Sec) override
 
Error visit (const CompressedSection &Sec) override
 
Error visit (const DecompressedSection &Sec) override
 
 BinarySectionWriter (WritableMemoryBuffer &Buf)
 
- Public Member Functions inherited from llvm::objcopy::elf::SectionWriter
virtual ~SectionWriter ()=default
 
Error visit (const Section &Sec) override
 
Error visit (const OwnedDataSection &Sec) override
 
Error visit (const StringTableSection &Sec) override
 
Error visit (const DynamicRelocationSection &Sec) override
 
Error visit (const SymbolTableSection &Sec) override=0
 
Error visit (const RelocationSection &Sec) override=0
 
Error visit (const GnuDebugLinkSection &Sec) override=0
 
Error visit (const GroupSection &Sec) override=0
 
Error visit (const SectionIndexSection &Sec) override=0
 
Error visit (const CompressedSection &Sec) override=0
 
Error visit (const DecompressedSection &Sec) override=0
 
 SectionWriter (WritableMemoryBuffer &Buf)
 
- Public Member Functions inherited from llvm::objcopy::elf::SectionVisitor
virtual ~SectionVisitor ()=default
 
virtual Error visit (const Section &Sec)=0
 
virtual Error visit (const OwnedDataSection &Sec)=0
 
virtual Error visit (const StringTableSection &Sec)=0
 
virtual Error visit (const SymbolTableSection &Sec)=0
 
virtual Error visit (const RelocationSection &Sec)=0
 
virtual Error visit (const DynamicRelocationSection &Sec)=0
 
virtual Error visit (const GnuDebugLinkSection &Sec)=0
 
virtual Error visit (const GroupSection &Sec)=0
 
virtual Error visit (const SectionIndexSection &Sec)=0
 
virtual Error visit (const CompressedSection &Sec)=0
 
virtual Error visit (const DecompressedSection &Sec)=0
 

Protected Member Functions

void writeSection (const SectionBase &S, ArrayRef< uint8_t > Data)
 
virtual void writeRecord (SRecord &Record, uint64_t Off)=0
 

Protected Attributes

uint64_t Offset
 
uint64_t HeaderSize
 
uint8_t Type = SRecord::S1
 
std::vector< SRecordRecords
 
- Protected Attributes inherited from llvm::objcopy::elf::SectionWriter
WritableMemoryBufferOut
 

Detailed Description

Definition at line 458 of file ELFObject.h.

Constructor & Destructor Documentation

◆ SRECSectionWriterBase()

llvm::objcopy::elf::SRECSectionWriterBase::SRECSectionWriterBase ( WritableMemoryBuffer Buf,
uint64_t  StartOffset 
)
inlineexplicit

Definition at line 460 of file ELFObject.h.

Member Function Documentation

◆ getBufferOffset()

uint64_t llvm::objcopy::elf::SRECSectionWriterBase::getBufferOffset ( ) const
inline

Definition at line 468 of file ELFObject.h.

References Offset.

◆ getType()

uint8_t llvm::objcopy::elf::SRECSectionWriterBase::getType ( ) const
inline

Definition at line 473 of file ELFObject.h.

References Type.

◆ visit() [1/11]

Error BinarySectionWriter::visit ( const CompressedSection Sec)
overridevirtual

Reimplemented from llvm::objcopy::elf::BinarySectionWriter.

Definition at line 190 of file ELFObject.cpp.

◆ visit() [2/11]

Error BinarySectionWriter::visit ( const DecompressedSection Sec)
overridevirtual

Reimplemented from llvm::objcopy::elf::BinarySectionWriter.

Definition at line 191 of file ELFObject.cpp.

◆ visit() [3/11]

Error SRECSectionWriterBase::visit ( const DynamicRelocationSection S)
overridevirtual

Reimplemented from llvm::objcopy::elf::SectionWriter.

Definition at line 2885 of file ELFObject.cpp.

References llvm::Error::success(), and writeSection().

◆ visit() [4/11]

Error BinarySectionWriter::visit ( const GnuDebugLinkSection Sec)
overridevirtual

Reimplemented from llvm::objcopy::elf::BinarySectionWriter.

Definition at line 187 of file ELFObject.cpp.

◆ visit() [5/11]

Error BinarySectionWriter::visit ( const GroupSection Sec)
overridevirtual

Reimplemented from llvm::objcopy::elf::BinarySectionWriter.

Definition at line 188 of file ELFObject.cpp.

◆ visit() [6/11]

Error SRECSectionWriterBase::visit ( const OwnedDataSection S)
overridevirtual

Reimplemented from llvm::objcopy::elf::SectionWriter.

Definition at line 2880 of file ELFObject.cpp.

References llvm::Error::success(), and writeSection().

◆ visit() [7/11]

Error BinarySectionWriter::visit ( const RelocationSection Sec)
overridevirtual

Reimplemented from llvm::objcopy::elf::BinarySectionWriter.

Definition at line 186 of file ELFObject.cpp.

◆ visit() [8/11]

Error SRECSectionWriterBase::visit ( const Section S)
overridevirtual

Reimplemented from llvm::objcopy::elf::SectionWriter.

Definition at line 2875 of file ELFObject.cpp.

References llvm::Error::success(), and writeSection().

◆ visit() [9/11]

Error BinarySectionWriter::visit ( const SectionIndexSection Sec)
overridevirtual

Reimplemented from llvm::objcopy::elf::BinarySectionWriter.

Definition at line 189 of file ELFObject.cpp.

◆ visit() [10/11]

Error SRECSectionWriterBase::visit ( const StringTableSection S)
overridevirtual

◆ visit() [11/11]

Error BinarySectionWriter::visit ( const SymbolTableSection Sec)
overridevirtual

Reimplemented from llvm::objcopy::elf::BinarySectionWriter.

Definition at line 185 of file ELFObject.cpp.

◆ writeRecord()

virtual void llvm::objcopy::elf::SRECSectionWriterBase::writeRecord ( SRecord Record,
uint64_t  Off 
)
protectedpure virtual

◆ writeRecords()

void SRECSectionWriterBase::writeRecords ( uint32_t  Entry)

◆ writeSection()

void SRECSectionWriterBase::writeSection ( const SectionBase S,
ArrayRef< uint8_t Data 
)
protected

Member Data Documentation

◆ HeaderSize

uint64_t llvm::objcopy::elf::SRECSectionWriterBase::HeaderSize
protected

Definition at line 479 of file ELFObject.h.

Referenced by writeRecords().

◆ Offset

uint64_t llvm::objcopy::elf::SRECSectionWriterBase::Offset
protected

Definition at line 477 of file ELFObject.h.

Referenced by getBufferOffset(), and writeRecords().

◆ Records

std::vector<SRecord> llvm::objcopy::elf::SRECSectionWriterBase::Records
protected

Definition at line 482 of file ELFObject.h.

Referenced by writeRecords(), and writeSection().

◆ Type

uint8_t llvm::objcopy::elf::SRECSectionWriterBase::Type = SRecord::S1
protected

Definition at line 481 of file ELFObject.h.

Referenced by getType(), writeRecords(), and writeSection().


The documentation for this class was generated from the following files: