LLVM 20.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
[legend]

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 ()=default
 
FrameKind getKind () const
 
uint64_t getOffset () const
 
uint64_t getLength () const
 
const CFIProgramcfis () const
 
CFIProgramcfis ()
 
virtual void dump (raw_ostream &OS, DIDumpOptions DumpOpts) const =0
 Dump the instructions in this CFI fragment.
 

Protected Attributes

const FrameKind Kind
 
const bool IsDWARF64
 
const uint64_t Offset
 Offset of this entry in the section.
 
const uint64_t Length
 Entry length as specified in DWARF.
 
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 532 of file DWARFDebugFrame.h.

Member Enumeration Documentation

◆ FrameKind

Enumerator
FK_CIE 
FK_FDE 

Definition at line 534 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 
)
inline

Definition at line 536 of file DWARFDebugFrame.h.

◆ ~FrameEntry()

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

Member Function Documentation

◆ cfis() [1/2]

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

Definition at line 547 of file DWARFDebugFrame.h.

References CFIs.

◆ cfis() [2/2]

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

Definition at line 546 of file DWARFDebugFrame.h.

References CFIs.

Referenced by llvm::dwarf::UnwindTable::create().

◆ dump()

virtual void llvm::dwarf::FrameEntry::dump ( raw_ostream OS,
DIDumpOptions  DumpOpts 
) const
pure virtual

Dump the instructions in this CFI fragment.

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

◆ getKind()

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

Definition at line 543 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 545 of file DWARFDebugFrame.h.

References Length.

◆ getOffset()

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

Definition at line 544 of file DWARFDebugFrame.h.

References Offset.

Referenced by llvm::dwarf::UnwindTable::create().

Member Data Documentation

◆ CFIs

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

Definition at line 563 of file DWARFDebugFrame.h.

Referenced by cfis().

◆ IsDWARF64

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

Definition at line 555 of file DWARFDebugFrame.h.

◆ Kind

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

Definition at line 553 of file DWARFDebugFrame.h.

Referenced by getKind().

◆ Length

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

Entry length as specified in DWARF.

Definition at line 561 of file DWARFDebugFrame.h.

Referenced by getLength().

◆ Offset

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

Offset of this entry in the section.

Definition at line 558 of file DWARFDebugFrame.h.

Referenced by getOffset().


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