LLVM  11.0.0git
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
Collaboration diagram for llvm::dwarf::FrameEntry:
Collaboration graph

Public Types

enum  FrameKind { FK_CIE, FK_FDE }

Public Member Functions

 FrameEntry (FrameKind K, bool IsDWARF64, 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 bool IsDWARF64
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 131 of file DWARFDebugFrame.h.

Member Enumeration Documentation

◆ FrameKind


Definition at line 133 of file DWARFDebugFrame.h.

Constructor & Destructor Documentation

◆ FrameEntry()

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

Definition at line 135 of file DWARFDebugFrame.h.

◆ ~FrameEntry()

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

Definition at line 140 of file DWARFDebugFrame.h.

Member Function Documentation

◆ cfis() [1/2]

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

Definition at line 145 of file DWARFDebugFrame.h.

◆ cfis() [2/2]

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

Definition at line 146 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

Definition at line 142 of file DWARFDebugFrame.h.

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

◆ getLength()

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

Definition at line 144 of file DWARFDebugFrame.h.

◆ getOffset()

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

Definition at line 143 of file DWARFDebugFrame.h.

Member Data Documentation

◆ CFIs

CFIProgram llvm::dwarf::FrameEntry::CFIs

Definition at line 163 of file DWARFDebugFrame.h.


const bool llvm::dwarf::FrameEntry::IsDWARF64

Definition at line 155 of file DWARFDebugFrame.h.

◆ Kind

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

Definition at line 153 of file DWARFDebugFrame.h.

◆ Length

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

Entry length as specified in DWARF.

Definition at line 161 of file DWARFDebugFrame.h.

◆ Offset

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

Offset of this entry in the section.

Definition at line 158 of file DWARFDebugFrame.h.

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