LLDB mainline
RegisterInfoPOSIX_riscv64 Class Reference

#include <RegisterInfoPOSIX_riscv64.h>

Inheritance diagram for RegisterInfoPOSIX_riscv64:
[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)
Public Member Functions inherited from lldb_private::RegisterInfoInterface
 RegisterInfoInterface (const lldb_private::ArchSpec &target_arch)
virtual ~RegisterInfoInterface ()=default
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 126 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

Definition at line 67 of file RegisterInfoPOSIX_riscv64.h.

References eRegsetMaskFP, and m_opt_regsets.

◆ IsFPReg()

bool RegisterInfoPOSIX_riscv64::IsFPReg ( unsigned reg) const

Definition at line 140 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: