LLVM 19.0.0git
Public Member Functions | Static Public Member Functions | List of all members
llvm::dwarf::CIE Class Reference

DWARF Common Information Entry (CIE) More...

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

Inheritance diagram for llvm::dwarf::CIE:
Inheritance graph
[legend]

Public Member Functions

 CIE (bool IsDWARF64, uint64_t Offset, uint64_t Length, uint8_t Version, SmallString< 8 > Augmentation, uint8_t AddressSize, uint8_t SegmentDescriptorSize, uint64_t CodeAlignmentFactor, int64_t DataAlignmentFactor, uint64_t ReturnAddressRegister, SmallString< 8 > AugmentationData, uint32_t FDEPointerEncoding, uint32_t LSDAPointerEncoding, std::optional< uint64_t > Personality, std::optional< uint32_t > PersonalityEnc, Triple::ArchType Arch)
 
StringRef getAugmentationString () const
 
uint64_t getCodeAlignmentFactor () const
 
int64_t getDataAlignmentFactor () const
 
uint8_t getVersion () const
 
uint64_t getReturnAddressRegister () const
 
std::optional< uint64_tgetPersonalityAddress () const
 
std::optional< uint32_tgetPersonalityEncoding () const
 
StringRef getAugmentationData () const
 
uint32_t getFDEPointerEncoding () const
 
uint32_t getLSDAPointerEncoding () const
 
void dump (raw_ostream &OS, DIDumpOptions DumpOpts) const override
 Dump the instructions in this CFI fragment.
 
- Public Member Functions inherited from llvm::dwarf::FrameEntry
 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.
 

Static Public Member Functions

static bool classof (const FrameEntry *FE)
 

Additional Inherited Members

- Public Types inherited from llvm::dwarf::FrameEntry
enum  FrameKind { FK_CIE , FK_FDE }
 
- Protected Attributes inherited from llvm::dwarf::FrameEntry
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

DWARF Common Information Entry (CIE)

Definition at line 567 of file DWARFDebugFrame.h.

Constructor & Destructor Documentation

◆ CIE()

llvm::dwarf::CIE::CIE ( bool  IsDWARF64,
uint64_t  Offset,
uint64_t  Length,
uint8_t  Version,
SmallString< 8 >  Augmentation,
uint8_t  AddressSize,
uint8_t  SegmentDescriptorSize,
uint64_t  CodeAlignmentFactor,
int64_t  DataAlignmentFactor,
uint64_t  ReturnAddressRegister,
SmallString< 8 >  AugmentationData,
uint32_t  FDEPointerEncoding,
uint32_t  LSDAPointerEncoding,
std::optional< uint64_t Personality,
std::optional< uint32_t PersonalityEnc,
Triple::ArchType  Arch 
)
inline

Definition at line 571 of file DWARFDebugFrame.h.

Member Function Documentation

◆ classof()

static bool llvm::dwarf::CIE::classof ( const FrameEntry FE)
inlinestatic

◆ dump()

void CIE::dump ( raw_ostream OS,
DIDumpOptions  DumpOpts 
) const
overridevirtual

◆ getAugmentationData()

StringRef llvm::dwarf::CIE::getAugmentationData ( ) const
inline

Definition at line 602 of file DWARFDebugFrame.h.

◆ getAugmentationString()

StringRef llvm::dwarf::CIE::getAugmentationString ( ) const
inline

Definition at line 592 of file DWARFDebugFrame.h.

Referenced by llvm::DWARFDebugFrame::parse().

◆ getCodeAlignmentFactor()

uint64_t llvm::dwarf::CIE::getCodeAlignmentFactor ( ) const
inline

Definition at line 593 of file DWARFDebugFrame.h.

◆ getDataAlignmentFactor()

int64_t llvm::dwarf::CIE::getDataAlignmentFactor ( ) const
inline

Definition at line 594 of file DWARFDebugFrame.h.

◆ getFDEPointerEncoding()

uint32_t llvm::dwarf::CIE::getFDEPointerEncoding ( ) const
inline

Definition at line 604 of file DWARFDebugFrame.h.

Referenced by llvm::DWARFDebugFrame::parse().

◆ getLSDAPointerEncoding()

uint32_t llvm::dwarf::CIE::getLSDAPointerEncoding ( ) const
inline

Definition at line 606 of file DWARFDebugFrame.h.

Referenced by llvm::DWARFDebugFrame::parse().

◆ getPersonalityAddress()

std::optional< uint64_t > llvm::dwarf::CIE::getPersonalityAddress ( ) const
inline

Definition at line 597 of file DWARFDebugFrame.h.

◆ getPersonalityEncoding()

std::optional< uint32_t > llvm::dwarf::CIE::getPersonalityEncoding ( ) const
inline

Definition at line 598 of file DWARFDebugFrame.h.

◆ getReturnAddressRegister()

uint64_t llvm::dwarf::CIE::getReturnAddressRegister ( ) const
inline

Definition at line 596 of file DWARFDebugFrame.h.

◆ getVersion()

uint8_t llvm::dwarf::CIE::getVersion ( ) const
inline

Definition at line 595 of file DWARFDebugFrame.h.


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