LLDB  mainline
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
DynamicRegisterInfo Class Reference

#include <DynamicRegisterInfo.h>

Inheritance diagram for DynamicRegisterInfo:
Inheritance graph
[legend]
Collaboration diagram for DynamicRegisterInfo:
Collaboration graph
[legend]

Public Member Functions

 DynamicRegisterInfo ()=default
 
 DynamicRegisterInfo (const lldb_private::StructuredData::Dictionary &dict, const lldb_private::ArchSpec &arch)
 
virtual ~DynamicRegisterInfo ()=default
 
 DynamicRegisterInfo (DynamicRegisterInfo &)=delete
 
void operator= (DynamicRegisterInfo &)=delete
 
 DynamicRegisterInfo (DynamicRegisterInfo &&info)
 
DynamicRegisterInfooperator= (DynamicRegisterInfo &&info)
 
size_t SetRegisterInfo (const lldb_private::StructuredData::Dictionary &dict, const lldb_private::ArchSpec &arch)
 
void AddRegister (lldb_private::RegisterInfo &reg_info, lldb_private::ConstString &reg_name, lldb_private::ConstString &reg_alt_name, lldb_private::ConstString &set_name)
 
void Finalize (const lldb_private::ArchSpec &arch)
 
size_t GetNumRegisters () const
 
size_t GetNumRegisterSets () const
 
size_t GetRegisterDataByteSize () const
 
const lldb_private::RegisterInfo * GetRegisterInfoAtIndex (uint32_t i) const
 
lldb_private::RegisterInfo * GetRegisterInfoAtIndex (uint32_t i)
 
const lldb_private::RegisterSet * GetRegisterSet (uint32_t i) const
 
uint32_t GetRegisterSetIndexByName (lldb_private::ConstString &set_name, bool can_create)
 
uint32_t ConvertRegisterKindToRegisterNumber (uint32_t kind, uint32_t num) const
 
void Dump () const
 
void Clear ()
 

Protected Types

typedef std::vector< lldb_private::RegisterInfo > reg_collection
 
typedef std::vector< lldb_private::RegisterSet > set_collection
 
typedef std::vector< uint32_treg_num_collection
 
typedef std::vector< reg_num_collectionset_reg_num_collection
 
typedef std::vector< lldb_private::ConstStringname_collection
 
typedef std::map< uint32_t, reg_num_collectionreg_to_regs_map
 
typedef std::vector< uint8_t > dwarf_opcode
 
typedef std::map< uint32_t, dwarf_opcodedynamic_reg_size_map
 

Protected Member Functions

const lldb_private::RegisterInfo * GetRegisterInfo (lldb_private::ConstString reg_name) const
 
void MoveFrom (DynamicRegisterInfo &&info)
 

Protected Attributes

reg_collection m_regs
 
set_collection m_sets
 
set_reg_num_collection m_set_reg_nums
 
name_collection m_set_names
 
reg_to_regs_map m_value_regs_map
 
reg_to_regs_map m_invalidate_regs_map
 
dynamic_reg_size_map m_dynamic_reg_size_map
 
size_t m_reg_data_byte_size = 0u
 
bool m_finalized = false
 

Detailed Description

Definition at line 19 of file DynamicRegisterInfo.h.

Member Typedef Documentation

◆ dwarf_opcode

typedef std::vector<uint8_t> DynamicRegisterInfo::dwarf_opcode
protected

Definition at line 74 of file DynamicRegisterInfo.h.

◆ dynamic_reg_size_map

Definition at line 75 of file DynamicRegisterInfo.h.

◆ name_collection

Definition at line 72 of file DynamicRegisterInfo.h.

◆ reg_collection

typedef std::vector<lldb_private::RegisterInfo> DynamicRegisterInfo::reg_collection
protected

Definition at line 68 of file DynamicRegisterInfo.h.

◆ reg_num_collection

typedef std::vector<uint32_t> DynamicRegisterInfo::reg_num_collection
protected

Definition at line 70 of file DynamicRegisterInfo.h.

◆ reg_to_regs_map

Definition at line 73 of file DynamicRegisterInfo.h.

◆ set_collection

typedef std::vector<lldb_private::RegisterSet> DynamicRegisterInfo::set_collection
protected

Definition at line 69 of file DynamicRegisterInfo.h.

◆ set_reg_num_collection

Definition at line 71 of file DynamicRegisterInfo.h.

Constructor & Destructor Documentation

◆ DynamicRegisterInfo() [1/4]

DynamicRegisterInfo::DynamicRegisterInfo ( )
default

◆ DynamicRegisterInfo() [2/4]

DynamicRegisterInfo::DynamicRegisterInfo ( const lldb_private::StructuredData::Dictionary dict,
const lldb_private::ArchSpec arch 
)

Definition at line 23 of file DynamicRegisterInfo.cpp.

◆ ~DynamicRegisterInfo()

virtual DynamicRegisterInfo::~DynamicRegisterInfo ( )
virtualdefault

◆ DynamicRegisterInfo() [3/4]

DynamicRegisterInfo::DynamicRegisterInfo ( DynamicRegisterInfo )
delete

◆ DynamicRegisterInfo() [4/4]

DynamicRegisterInfo::DynamicRegisterInfo ( DynamicRegisterInfo &&  info)

Definition at line 29 of file DynamicRegisterInfo.cpp.

Member Function Documentation

◆ AddRegister()

void DynamicRegisterInfo::AddRegister ( lldb_private::RegisterInfo &  reg_info,
lldb_private::ConstString reg_name,
lldb_private::ConstString reg_alt_name,
lldb_private::ConstString set_name 
)

◆ Clear()

void DynamicRegisterInfo::Clear ( )

◆ ConvertRegisterKindToRegisterNumber()

uint32_t DynamicRegisterInfo::ConvertRegisterKindToRegisterNumber ( uint32_t  kind,
uint32_t  num 
) const

◆ Dump()

void DynamicRegisterInfo::Dump ( ) const

◆ Finalize()

void DynamicRegisterInfo::Finalize ( const lldb_private::ArchSpec arch)

◆ GetNumRegisters()

size_t DynamicRegisterInfo::GetNumRegisters ( ) const

◆ GetNumRegisterSets()

size_t DynamicRegisterInfo::GetNumRegisterSets ( ) const

◆ GetRegisterDataByteSize()

size_t DynamicRegisterInfo::GetRegisterDataByteSize ( ) const

◆ GetRegisterInfo()

const lldb_private::RegisterInfo * DynamicRegisterInfo::GetRegisterInfo ( lldb_private::ConstString  reg_name) const
protected

Definition at line 748 of file DynamicRegisterInfo.cpp.

References lldb_private::ConstString::GetCString().

◆ GetRegisterInfoAtIndex() [1/2]

const RegisterInfo * DynamicRegisterInfo::GetRegisterInfoAtIndex ( uint32_t  i) const

◆ GetRegisterInfoAtIndex() [2/2]

RegisterInfo * DynamicRegisterInfo::GetRegisterInfoAtIndex ( uint32_t  i)

Definition at line 645 of file DynamicRegisterInfo.cpp.

◆ GetRegisterSet()

const RegisterSet * DynamicRegisterInfo::GetRegisterSet ( uint32_t  i) const

◆ GetRegisterSetIndexByName()

uint32_t DynamicRegisterInfo::GetRegisterSetIndexByName ( lldb_private::ConstString set_name,
bool  can_create 
)

Definition at line 657 of file DynamicRegisterInfo.cpp.

References lldb_private::ConstString::AsCString().

◆ MoveFrom()

void DynamicRegisterInfo::MoveFrom ( DynamicRegisterInfo &&  info)
protected

Definition at line 39 of file DynamicRegisterInfo.cpp.

◆ operator=() [1/2]

void DynamicRegisterInfo::operator= ( DynamicRegisterInfo )
delete

◆ operator=() [2/2]

DynamicRegisterInfo & DynamicRegisterInfo::operator= ( DynamicRegisterInfo &&  info)

Definition at line 34 of file DynamicRegisterInfo.cpp.

◆ SetRegisterInfo()

size_t DynamicRegisterInfo::SetRegisterInfo ( const lldb_private::StructuredData::Dictionary dict,
const lldb_private::ArchSpec arch 
)

Member Data Documentation

◆ m_dynamic_reg_size_map

dynamic_reg_size_map DynamicRegisterInfo::m_dynamic_reg_size_map
protected

Definition at line 88 of file DynamicRegisterInfo.h.

◆ m_finalized

bool DynamicRegisterInfo::m_finalized = false
protected

Definition at line 91 of file DynamicRegisterInfo.h.

◆ m_invalidate_regs_map

reg_to_regs_map DynamicRegisterInfo::m_invalidate_regs_map
protected

Definition at line 87 of file DynamicRegisterInfo.h.

◆ m_reg_data_byte_size

size_t DynamicRegisterInfo::m_reg_data_byte_size = 0u
protected

Definition at line 89 of file DynamicRegisterInfo.h.

◆ m_regs

reg_collection DynamicRegisterInfo::m_regs
protected

Definition at line 82 of file DynamicRegisterInfo.h.

◆ m_set_names

name_collection DynamicRegisterInfo::m_set_names
protected

Definition at line 85 of file DynamicRegisterInfo.h.

◆ m_set_reg_nums

set_reg_num_collection DynamicRegisterInfo::m_set_reg_nums
protected

Definition at line 84 of file DynamicRegisterInfo.h.

◆ m_sets

set_collection DynamicRegisterInfo::m_sets
protected

Definition at line 83 of file DynamicRegisterInfo.h.

◆ m_value_regs_map

reg_to_regs_map DynamicRegisterInfo::m_value_regs_map
protected

Definition at line 86 of file DynamicRegisterInfo.h.


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