LLVM 22.0.0git
llvm::objcopy::elf::RelocationSection Class Reference

#include "ObjCopy/ELF/ELFObject.h"

Inheritance diagram for llvm::objcopy::elf::RelocationSection:
[legend]

Public Member Functions

 RelocationSection (const Object &O)
void addRelocation (const Relocation &Rel)
Error accept (SectionVisitor &Visitor) const override
Error accept (MutableSectionVisitor &Visitor) override
Error removeSectionReferences (bool AllowBrokenLinks, function_ref< bool(const SectionBase *)> ToRemove) override
Error removeSymbols (function_ref< bool(const Symbol &)> ToRemove) override
void markSymbols () override
void replaceSectionReferences (const DenseMap< SectionBase *, SectionBase * > &FromTo) override
const ObjectgetObject () const
Public Member Functions inherited from llvm::objcopy::elf::RelocSectionWithSymtabBase< SymbolTableSection >
Error initialize (SectionTableRef SecTable) override
void finalize () override
Public Member Functions inherited from llvm::objcopy::elf::RelocationSectionBase
const SectionBasegetSection () const
void setSection (SectionBase *Sec)
StringRef getNamePrefix () const
Public Member Functions inherited from llvm::objcopy::elf::SectionBase
 SectionBase ()=default
 SectionBase (const SectionBase &)=default
virtual ~SectionBase ()=default
virtual bool hasContents () const
virtual ArrayRef< uint8_tgetContents () const
virtual void onRemove ()
virtual void restoreSymTabLink (SymbolTableSection &)

Static Public Member Functions

static bool classof (const SectionBase *S)
Static Public Member Functions inherited from llvm::objcopy::elf::RelocationSectionBase
static bool classof (const SectionBase *S)

Additional Inherited Members

Public Attributes inherited from llvm::objcopy::elf::SectionBase
std::string Name
SegmentParentSegment = nullptr
uint64_t HeaderOffset = 0
uint32_t Index = 0
uint32_t OriginalIndex = 0
uint64_t OriginalFlags = 0
uint64_t OriginalType = ELF::SHT_NULL
uint64_t OriginalOffset = std::numeric_limits<uint64_t>::max()
uint64_t Addr = 0
uint64_t Align = 1
uint32_t EntrySize = 0
uint64_t Flags = 0
uint64_t Info = 0
uint64_t Link = ELF::SHN_UNDEF
uint64_t NameIndex = 0
uint64_t Offset = 0
uint64_t Size = 0
uint64_t Type = ELF::SHT_NULL
ArrayRef< uint8_tOriginalData
bool HasSymbol = false
Protected Member Functions inherited from llvm::objcopy::elf::RelocSectionWithSymtabBase< SymbolTableSection >
 RelocSectionWithSymtabBase ()=default
Protected Attributes inherited from llvm::objcopy::elf::RelocSectionWithSymtabBase< SymbolTableSection >
SymbolTableSectionSymbols
Protected Attributes inherited from llvm::objcopy::elf::RelocationSectionBase
SectionBaseSecToApplyRel = nullptr

Detailed Description

Definition at line 909 of file ELFObject.h.

Constructor & Destructor Documentation

◆ RelocationSection()

llvm::objcopy::elf::RelocationSection::RelocationSection ( const Object & O)
inline

Definition at line 917 of file ELFObject.h.

Member Function Documentation

◆ accept() [1/2]

Error RelocationSection::accept ( MutableSectionVisitor & Visitor)
overridevirtual

◆ accept() [2/2]

Error RelocationSection::accept ( SectionVisitor & Visitor) const
overridevirtual

◆ addRelocation()

void llvm::objcopy::elf::RelocationSection::addRelocation ( const Relocation & Rel)
inline

Definition at line 918 of file ELFObject.h.

Referenced by initRelocations().

◆ classof()

bool llvm::objcopy::elf::RelocationSection::classof ( const SectionBase * S)
inlinestatic

◆ getObject()

const Object & llvm::objcopy::elf::RelocationSection::getObject ( ) const
inline

◆ markSymbols()

void RelocationSection::markSymbols ( )
overridevirtual

Reimplemented from llvm::objcopy::elf::SectionBase.

Definition at line 1018 of file ELFObject.cpp.

◆ removeSectionReferences()

Error RelocationSection::removeSectionReferences ( bool AllowBrokenLinks,
function_ref< bool(const SectionBase *)> ToRemove )
overridevirtual

◆ removeSymbols()

Error RelocationSection::removeSymbols ( function_ref< bool(const Symbol &)> ToRemove)
overridevirtual

◆ replaceSectionReferences()

void RelocationSection::replaceSectionReferences ( const DenseMap< SectionBase *, SectionBase * > & FromTo)
overridevirtual

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