LLVM  8.0.1
Public Types | Public Member Functions | Protected Attributes | List of all members
llvm::dwarf::FrameEntry Class Referenceabstract

An entry in either debug_frame or eh_frame. More...

#include "llvm/DebugInfo/DWARF/DWARFDebugFrame.h"

Inheritance diagram for llvm::dwarf::FrameEntry:
Inheritance graph
[legend]
Collaboration diagram for llvm::dwarf::FrameEntry:
Collaboration graph
[legend]

Public Types

enum  FrameKind { FK_CIE, FK_FDE }
 

Public Member Functions

 FrameEntry (FrameKind K, uint64_t Offset, uint64_t Length, uint64_t CodeAlign, int64_t DataAlign, Triple::ArchType Arch)
 
virtual ~FrameEntry ()
 
FrameKind getKind () const
 
uint64_t getOffset () const
 
uint64_t getLength () const
 
const CFIProgramcfis () const
 
CFIProgramcfis ()
 
virtual void dump (raw_ostream &OS, const MCRegisterInfo *MRI, bool IsEH) const =0
 Dump the instructions in this CFI fragment. More...
 

Protected Attributes

const FrameKind Kind
 
const uint64_t Offset
 Offset of this entry in the section. More...
 
const uint64_t Length
 Entry length as specified in DWARF. More...
 
CFIProgram CFIs
 

Detailed Description

An entry in either debug_frame or eh_frame.

This entry can be a CIE or an FDE.

Definition at line 132 of file DWARFDebugFrame.h.

Member Enumeration Documentation

◆ FrameKind

Enumerator
FK_CIE 
FK_FDE 

Definition at line 134 of file DWARFDebugFrame.h.

Constructor & Destructor Documentation

◆ FrameEntry()

llvm::dwarf::FrameEntry::FrameEntry ( FrameKind  K,
uint64_t  Offset,
uint64_t  Length,
uint64_t  CodeAlign,
int64_t  DataAlign,
Triple::ArchType  Arch 
)
inline

Definition at line 136 of file DWARFDebugFrame.h.

◆ ~FrameEntry()

virtual llvm::dwarf::FrameEntry::~FrameEntry ( )
inlinevirtual

Definition at line 141 of file DWARFDebugFrame.h.

Member Function Documentation

◆ cfis() [1/2]

const CFIProgram& llvm::dwarf::FrameEntry::cfis ( ) const
inline

Definition at line 146 of file DWARFDebugFrame.h.

◆ cfis() [2/2]

CFIProgram& llvm::dwarf::FrameEntry::cfis ( )
inline

Definition at line 147 of file DWARFDebugFrame.h.

References llvm::dwarf::CFIProgram::dump(), and MRI.

◆ dump()

virtual void llvm::dwarf::FrameEntry::dump ( raw_ostream OS,
const MCRegisterInfo MRI,
bool  IsEH 
) const
pure virtual

Dump the instructions in this CFI fragment.

Implemented in llvm::dwarf::FDE, and llvm::dwarf::CIE.

◆ getKind()

FrameKind llvm::dwarf::FrameEntry::getKind ( ) const
inline

Definition at line 143 of file DWARFDebugFrame.h.

References Kind.

Referenced by llvm::dwarf::CIE::classof(), and llvm::dwarf::FDE::classof().

◆ getLength()

uint64_t llvm::dwarf::FrameEntry::getLength ( ) const
inline

Definition at line 145 of file DWARFDebugFrame.h.

◆ getOffset()

uint64_t llvm::dwarf::FrameEntry::getOffset ( ) const
inline

Definition at line 144 of file DWARFDebugFrame.h.

Member Data Documentation

◆ CFIs

CFIProgram llvm::dwarf::FrameEntry::CFIs
protected

Definition at line 162 of file DWARFDebugFrame.h.

◆ Kind

const FrameKind llvm::dwarf::FrameEntry::Kind
protected

Definition at line 154 of file DWARFDebugFrame.h.

◆ Length

const uint64_t llvm::dwarf::FrameEntry::Length
protected

Entry length as specified in DWARF.

Definition at line 160 of file DWARFDebugFrame.h.

◆ Offset

const uint64_t llvm::dwarf::FrameEntry::Offset
protected

Offset of this entry in the section.

Definition at line 157 of file DWARFDebugFrame.h.


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