class SectionBase
Declaration
class SectionBase { /* full declaration omitted */ };
Declared at: llvm/lib/ObjCopy/ELF/ELFObject.h:390
Member Variables
- public std::string Name
- public llvm::objcopy::elf::Segment* ParentSegment = nullptr
- public uint64_t HeaderOffset = 0
- public uint32_t Index = 0
- public uint32_t OriginalIndex = 0
- public uint64_t OriginalFlags = 0
- public uint64_t OriginalType = ELF::SHT_NULL
- public uint64_t OriginalOffset = std::numeric_limits<unsigned long>::max()
- public uint64_t Addr = 0
- public uint64_t Align = 1
- public uint32_t EntrySize = 0
- public uint64_t Flags = 0
- public uint64_t Info = 0
- public uint64_t Link = ELF::SHN_UNDEF
- public uint64_t NameIndex = 0
- public uint64_t Offset = 0
- public uint64_t Size = 0
- public uint64_t Type = ELF::SHT_NULL
- public ArrayRef<uint8_t> OriginalData
- public bool HasSymbol = false
Method Overview
- public SectionBase()
- public SectionBase(const llvm::objcopy::elf::SectionBase &)
- public virtual llvm::Error accept(llvm::objcopy::elf::SectionVisitor & Visitor) const
- public virtual llvm::Error accept(llvm::objcopy::elf::MutableSectionVisitor & Visitor)
- public virtual void finalize()
- public virtual bool hasContents() const
- public virtual llvm::Error initialize(llvm::objcopy::elf::SectionTableRef SecTable)
- public virtual void markSymbols()
- public virtual void onRemove()
- public virtual llvm::Error removeSectionReferences(bool AllowBrokenLinks, function_ref<bool (const llvm::objcopy::elf::SectionBase *)> ToRemove)
- public virtual llvm::Error removeSymbols(function_ref<bool (const llvm::objcopy::elf::Symbol &)> ToRemove)
- public virtual void replaceSectionReferences(const DenseMap<llvm::objcopy::elf::SectionBase *, llvm::objcopy::elf::SectionBase *> &)
- public virtual ~SectionBase()
Methods
¶SectionBase()
SectionBase()
Declared at: llvm/lib/ObjCopy/ELF/ELFObject.h:415
¶SectionBase(
const llvm::objcopy::elf::SectionBase&)
SectionBase(
const llvm::objcopy::elf::SectionBase&)
Declared at: llvm/lib/ObjCopy/ELF/ELFObject.h:416
Parameters
¶virtual llvm::Error accept(
llvm::objcopy::elf::SectionVisitor& Visitor)
const
virtual llvm::Error accept(
llvm::objcopy::elf::SectionVisitor& Visitor)
const
Declared at: llvm/lib/ObjCopy/ELF/ELFObject.h:427
Parameters
- llvm::objcopy::elf::SectionVisitor& Visitor
¶virtual llvm::Error accept(
llvm::objcopy::elf::MutableSectionVisitor&
Visitor)
virtual llvm::Error accept(
llvm::objcopy::elf::MutableSectionVisitor&
Visitor)
Declared at: llvm/lib/ObjCopy/ELF/ELFObject.h:428
Parameters
¶virtual void finalize()
virtual void finalize()
Declared at: llvm/lib/ObjCopy/ELF/ELFObject.h:421
¶virtual bool hasContents() const
virtual bool hasContents() const
Declared at: llvm/lib/ObjCopy/ELF/ELFObject.h:432
¶virtual llvm::Error initialize(
llvm::objcopy::elf::SectionTableRef SecTable)
virtual llvm::Error initialize(
llvm::objcopy::elf::SectionTableRef SecTable)
Declared at: llvm/lib/ObjCopy/ELF/ELFObject.h:420
Parameters
- llvm::objcopy::elf::SectionTableRef SecTable
¶virtual void markSymbols()
virtual void markSymbols()
Declared at: llvm/lib/ObjCopy/ELF/ELFObject.h:429
¶virtual void onRemove()
virtual void onRemove()
Declared at: llvm/lib/ObjCopy/ELF/ELFObject.h:434
¶virtual llvm::Error removeSectionReferences(
bool AllowBrokenLinks,
function_ref<bool(
const llvm::objcopy::elf::SectionBase*)>
ToRemove)
virtual llvm::Error removeSectionReferences(
bool AllowBrokenLinks,
function_ref<bool(
const llvm::objcopy::elf::SectionBase*)>
ToRemove)
Declared at: llvm/lib/ObjCopy/ELF/ELFObject.h:424
Parameters
- bool AllowBrokenLinks
- function_ref<bool( const llvm::objcopy::elf::SectionBase*)> ToRemove
¶virtual llvm::Error removeSymbols(
function_ref<
bool(const llvm::objcopy::elf::Symbol&)>
ToRemove)
virtual llvm::Error removeSymbols(
function_ref<
bool(const llvm::objcopy::elf::Symbol&)>
ToRemove)
Declared at: llvm/lib/ObjCopy/ELF/ELFObject.h:426
Parameters
- function_ref<bool( const llvm::objcopy::elf::Symbol&)> ToRemove
¶virtual void replaceSectionReferences(
const DenseMap<
llvm::objcopy::elf::SectionBase*,
llvm::objcopy::elf::SectionBase*>&)
virtual void replaceSectionReferences(
const DenseMap<
llvm::objcopy::elf::SectionBase*,
llvm::objcopy::elf::SectionBase*>&)
Declared at: llvm/lib/ObjCopy/ELF/ELFObject.h:431
Parameters
- const DenseMap<llvm::objcopy::elf::SectionBase*, llvm::objcopy::elf::SectionBase*>&
¶virtual ~SectionBase()
virtual ~SectionBase()
Declared at: llvm/lib/ObjCopy/ELF/ELFObject.h:418