LLDB mainline
Classes | Public Types | Public Member Functions | Private Attributes | List of all members
RegisterInfoPOSIX_riscv64 Class Reference

#include <RegisterInfoPOSIX_riscv64.h>

Inheritance diagram for RegisterInfoPOSIX_riscv64:
Inheritance graph
[legend]

Classes

struct  FPR
 
struct  GPR
 
struct  VPR
 

Public Types

enum  { GPRegSet = 0 }
 
enum  { eRegsetMaskDefault = 0 , eRegsetMaskFP = 1 , eRegsetMaskAll = -1 }
 

Public Member Functions

 RegisterInfoPOSIX_riscv64 (const lldb_private::ArchSpec &target_arch, lldb_private::Flags opt_regsets)
 
void AddRegSetGP ()
 
void AddRegSetFP ()
 
size_t GetGPRSize () const override
 
size_t GetFPRSize () const override
 
const lldb_private::RegisterInfoGetRegisterInfo () const override
 
uint32_t GetRegisterCount () const override
 
const lldb_private::RegisterSetGetRegisterSet (size_t reg_set) const override
 
size_t GetRegisterSetCount () const override
 
size_t GetRegisterSetFromRegisterIndex (uint32_t reg_index) const override
 
bool IsFPPresent () const
 
bool IsFPReg (unsigned reg) const
 
- Public Member Functions inherited from lldb_private::RegisterInfoAndSetInterface
 RegisterInfoAndSetInterface (const lldb_private::ArchSpec &target_arch)
 
virtual size_t GetFPRSize () const =0
 
virtual const lldb_private::RegisterSetGetRegisterSet (size_t reg_set) const =0
 
virtual size_t GetRegisterSetCount () const =0
 
virtual size_t GetRegisterSetFromRegisterIndex (uint32_t reg_index) const =0
 
- Public Member Functions inherited from lldb_private::RegisterInfoInterface
 RegisterInfoInterface (const lldb_private::ArchSpec &target_arch)
 
virtual ~RegisterInfoInterface ()=default
 
virtual size_t GetGPRSize () const =0
 
virtual const lldb_private::RegisterInfoGetRegisterInfo () const =0
 
virtual uint32_t GetRegisterCount () const =0
 
virtual uint32_t GetUserRegisterCount () const
 
const lldb_private::ArchSpecGetTargetArchitecture () const
 

Private Attributes

std::vector< lldb_private::RegisterInfom_register_infos
 
std::vector< lldb_private::RegisterSetm_register_sets
 
std::map< uint32_t, std::pair< uint32_t, uint32_t > > m_per_regset_regnum_range
 
std::vector< uint32_t > m_fp_regnum_collection
 
lldb_private::Flags m_opt_regsets
 

Detailed Description

Definition at line 18 of file RegisterInfoPOSIX_riscv64.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
GPRegSet 

Definition at line 21 of file RegisterInfoPOSIX_riscv64.h.

◆ anonymous enum

anonymous enum
Enumerator
eRegsetMaskDefault 
eRegsetMaskFP 
eRegsetMaskAll 

Definition at line 24 of file RegisterInfoPOSIX_riscv64.h.

Constructor & Destructor Documentation

◆ RegisterInfoPOSIX_riscv64()

RegisterInfoPOSIX_riscv64::RegisterInfoPOSIX_riscv64 ( const lldb_private::ArchSpec target_arch,
lldb_private::Flags  opt_regsets 
)

Member Function Documentation

◆ AddRegSetFP()

void RegisterInfoPOSIX_riscv64::AddRegSetFP ( )

◆ AddRegSetGP()

void RegisterInfoPOSIX_riscv64::AddRegSetGP ( )

◆ GetFPRSize()

size_t RegisterInfoPOSIX_riscv64::GetFPRSize ( ) const
overridevirtual

◆ GetGPRSize()

size_t RegisterInfoPOSIX_riscv64::GetGPRSize ( ) const
overridevirtual

◆ GetRegisterCount()

uint32_t RegisterInfoPOSIX_riscv64::GetRegisterCount ( ) const
overridevirtual

◆ GetRegisterInfo()

const lldb_private::RegisterInfo * RegisterInfoPOSIX_riscv64::GetRegisterInfo ( ) const
overridevirtual

◆ GetRegisterSet()

const lldb_private::RegisterSet * RegisterInfoPOSIX_riscv64::GetRegisterSet ( size_t  reg_set) const
overridevirtual

◆ GetRegisterSetCount()

size_t RegisterInfoPOSIX_riscv64::GetRegisterSetCount ( ) const
overridevirtual

Implements lldb_private::RegisterInfoAndSetInterface.

Definition at line 127 of file RegisterInfoPOSIX_riscv64.cpp.

References m_register_sets.

Referenced by GetRegisterSet().

◆ GetRegisterSetFromRegisterIndex()

size_t RegisterInfoPOSIX_riscv64::GetRegisterSetFromRegisterIndex ( uint32_t  reg_index) const
overridevirtual

◆ IsFPPresent()

bool RegisterInfoPOSIX_riscv64::IsFPPresent ( ) const
inline

◆ IsFPReg()

bool RegisterInfoPOSIX_riscv64::IsFPReg ( unsigned  reg) const

Definition at line 141 of file RegisterInfoPOSIX_riscv64.cpp.

References m_fp_regnum_collection.

Member Data Documentation

◆ m_fp_regnum_collection

std::vector<uint32_t> RegisterInfoPOSIX_riscv64::m_fp_regnum_collection
private

Definition at line 81 of file RegisterInfoPOSIX_riscv64.h.

Referenced by AddRegSetFP(), and IsFPReg().

◆ m_opt_regsets

lldb_private::Flags RegisterInfoPOSIX_riscv64::m_opt_regsets
private

Definition at line 83 of file RegisterInfoPOSIX_riscv64.h.

Referenced by IsFPPresent(), and RegisterInfoPOSIX_riscv64().

◆ m_per_regset_regnum_range

std::map<uint32_t, std::pair<uint32_t, uint32_t> > RegisterInfoPOSIX_riscv64::m_per_regset_regnum_range
private

◆ m_register_infos

std::vector<lldb_private::RegisterInfo> RegisterInfoPOSIX_riscv64::m_register_infos
private

◆ m_register_sets

std::vector<lldb_private::RegisterSet> RegisterInfoPOSIX_riscv64::m_register_sets
private

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