class CFIProgram
Declaration
class CFIProgram { /* full declaration omitted */ };
Description
Represent a sequence of Call Frame Information instructions that, when read in order, construct a table mapping PC to frame state. This can also be referred to as "CFI rules" in DWARF literature to avoid confusion with computer programs in the broader sense, and in this context each instruction would be a rule to establish the mapping. Refer to pg. 172 in the DWARF5 manual, "6.4.1 Structure of Call Frame Information".
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h:34
Method Overview
- public CFIProgram(uint64_t CodeAlignmentFactor, int64_t DataAlignmentFactor, Triple::ArchType Arch)
- public llvm::dwarf::CFIProgram::iterator begin()
- public llvm::dwarf::CFIProgram::const_iterator begin() const
- public void dump(llvm::raw_ostream & OS, const llvm::MCRegisterInfo * MRI, bool IsEH, unsigned int IndentLevel = 1) const
- public bool empty() const
- public llvm::dwarf::CFIProgram::iterator end()
- public llvm::dwarf::CFIProgram::const_iterator end() const
- public llvm::Error parse(llvm::DWARFDataExtractor Data, uint64_t * Offset, uint64_t EndOffset)
- public unsigned int size() const
Methods
¶CFIProgram(uint64_t CodeAlignmentFactor,
int64_t DataAlignmentFactor,
Triple::ArchType Arch)
CFIProgram(uint64_t CodeAlignmentFactor,
int64_t DataAlignmentFactor,
Triple::ArchType Arch)
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h:62
Parameters
- uint64_t CodeAlignmentFactor
- int64_t DataAlignmentFactor
- Triple::ArchType Arch
¶llvm::dwarf::CFIProgram::iterator begin()
llvm::dwarf::CFIProgram::iterator begin()
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h:54
¶llvm::dwarf::CFIProgram::const_iterator begin()
const
llvm::dwarf::CFIProgram::const_iterator begin()
const
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h:55
¶void dump(llvm::raw_ostream& OS,
const llvm::MCRegisterInfo* MRI,
bool IsEH,
unsigned int IndentLevel = 1) const
void dump(llvm::raw_ostream& OS,
const llvm::MCRegisterInfo* MRI,
bool IsEH,
unsigned int IndentLevel = 1) const
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h:74
Parameters
- llvm::raw_ostream& OS
- const llvm::MCRegisterInfo* MRI
- bool IsEH
- unsigned int IndentLevel = 1
¶bool empty() const
bool empty() const
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h:60
¶llvm::dwarf::CFIProgram::iterator end()
llvm::dwarf::CFIProgram::iterator end()
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h:56
¶llvm::dwarf::CFIProgram::const_iterator end()
const
llvm::dwarf::CFIProgram::const_iterator end()
const
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h:57
¶llvm::Error parse(llvm::DWARFDataExtractor Data,
uint64_t* Offset,
uint64_t EndOffset)
llvm::Error parse(llvm::DWARFDataExtractor Data,
uint64_t* Offset,
uint64_t EndOffset)
Description
Parse and store a sequence of CFI instructions from Data, starting at *Offset and ending at EndOffset. *Offset is updated to EndOffset upon successful parsing, or indicates the offset where a problem occurred in case an error is returned.
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h:72
Parameters
- llvm::DWARFDataExtractor Data
- uint64_t* Offset
- uint64_t EndOffset
¶unsigned int size() const
unsigned int size() const
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h:59