LLDB mainline
|
A class to represent register numbers, and able to convert between different register numbering schemes that may be used in a single debug session. More...
#include <RegisterNumber.h>
Public Member Functions | |
RegisterNumber (lldb_private::Thread &thread, lldb::RegisterKind kind, uint32_t num) | |
RegisterNumber () | |
void | init (lldb_private::Thread &thread, lldb::RegisterKind kind, uint32_t num) |
const RegisterNumber & | operator= (const RegisterNumber &rhs) |
bool | operator== (RegisterNumber &rhs) |
bool | operator!= (RegisterNumber &rhs) |
bool | IsValid () const |
uint32_t | GetAsKind (lldb::RegisterKind kind) |
uint32_t | GetRegisterNumber () const |
lldb::RegisterKind | GetRegisterKind () const |
const char * | GetName () |
Private Types | |
typedef std::map< lldb::RegisterKind, uint32_t > | Collection |
Private Attributes | |
lldb::RegisterContextSP | m_reg_ctx_sp |
uint32_t | m_regnum = LLDB_INVALID_REGNUM |
lldb::RegisterKind | m_kind = lldb::kNumRegisterKinds |
Collection | m_kind_regnum_map |
const char * | m_name = nullptr |
A class to represent register numbers, and able to convert between different register numbering schemes that may be used in a single debug session.
Definition at line 19 of file RegisterNumber.h.
|
private |
Definition at line 50 of file RegisterNumber.h.
RegisterNumber::RegisterNumber | ( | lldb_private::Thread & | thread, |
lldb::RegisterKind | kind, | ||
uint32_t | num | ||
) |
Definition at line 15 of file RegisterNumber.cpp.
References lldb::eRegisterKindLLDB, GetAsKind(), m_name, m_reg_ctx_sp, and lldb_private::RegisterInfo::name.
RegisterNumber::RegisterNumber | ( | ) |
Definition at line 29 of file RegisterNumber.cpp.
uint32_t RegisterNumber::GetAsKind | ( | lldb::RegisterKind | kind | ) |
Definition at line 80 of file RegisterNumber.cpp.
References LLDB_INVALID_REGNUM, m_kind, m_kind_regnum_map, m_reg_ctx_sp, and m_regnum.
Referenced by UnwindAssembly_x86::AugmentUnwindPlanFromCallSite(), lldb_private::FuncUnwinders::CompareUnwindPlansForIdenticalInitialPCLocation(), init(), operator==(), lldb_private::RegisterContextUnwind::ReadFrameAddress(), RegisterNumber(), lldb_private::RegisterContextUnwind::SavedLocationForRegister(), and lldb_private::RegisterContextUnwind::TryFallbackUnwindPlan().
const char * RegisterNumber::GetName | ( | ) |
Definition at line 105 of file RegisterNumber.cpp.
References m_name.
Referenced by lldb_private::RegisterContextUnwind::ReadFrameAddress(), and lldb_private::RegisterContextUnwind::SavedLocationForRegister().
lldb::RegisterKind RegisterNumber::GetRegisterKind | ( | ) | const |
Definition at line 103 of file RegisterNumber.cpp.
References m_kind.
Referenced by lldb_private::RegisterContextUnwind::ReadGPRValue().
uint32_t RegisterNumber::GetRegisterNumber | ( | ) | const |
Definition at line 101 of file RegisterNumber.cpp.
References m_regnum.
Referenced by lldb_private::RegisterContextUnwind::ReadGPRValue().
void RegisterNumber::init | ( | lldb_private::Thread & | thread, |
lldb::RegisterKind | kind, | ||
uint32_t | num | ||
) |
Definition at line 31 of file RegisterNumber.cpp.
References lldb::eRegisterKindLLDB, GetAsKind(), lldb_private::Thread::GetRegisterContext(), m_kind, m_name, m_reg_ctx_sp, m_regnum, and lldb_private::RegisterInfo::name.
Referenced by lldb_private::RegisterContextUnwind::SavedLocationForRegister().
bool RegisterNumber::IsValid | ( | ) | const |
Definition at line 75 of file RegisterNumber.cpp.
References lldb::kNumRegisterKinds, LLDB_INVALID_REGNUM, m_kind, m_reg_ctx_sp, and m_regnum.
Referenced by operator==(), and lldb_private::RegisterContextUnwind::SavedLocationForRegister().
bool RegisterNumber::operator!= | ( | RegisterNumber & | rhs | ) |
Definition at line 73 of file RegisterNumber.cpp.
const RegisterNumber & RegisterNumber::operator= | ( | const RegisterNumber & | rhs | ) |
Definition at line 46 of file RegisterNumber.cpp.
References m_kind, m_kind_regnum_map, m_name, m_reg_ctx_sp, and m_regnum.
bool RegisterNumber::operator== | ( | RegisterNumber & | rhs | ) |
Definition at line 56 of file RegisterNumber.cpp.
References GetAsKind(), IsValid(), LLDB_INVALID_REGNUM, m_kind, and m_regnum.
|
private |
Definition at line 54 of file RegisterNumber.h.
Referenced by GetAsKind(), GetRegisterKind(), init(), IsValid(), operator=(), and operator==().
|
private |
Definition at line 55 of file RegisterNumber.h.
Referenced by GetAsKind(), and operator=().
|
private |
Definition at line 56 of file RegisterNumber.h.
Referenced by GetName(), init(), operator=(), and RegisterNumber().
|
private |
Definition at line 52 of file RegisterNumber.h.
Referenced by GetAsKind(), init(), IsValid(), operator=(), and RegisterNumber().
|
private |
Definition at line 53 of file RegisterNumber.h.
Referenced by GetAsKind(), GetRegisterNumber(), init(), IsValid(), operator=(), and operator==().