LLDB  mainline
Public Member Functions | Protected Member Functions | Private Attributes | List of all members
RegisterContextCorePOSIX_powerpc Class Reference

#include <RegisterContextPOSIXCore_powerpc.h>

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

Public Member Functions

 RegisterContextCorePOSIX_powerpc (lldb_private::Thread &thread, lldb_private::RegisterInfoInterface *register_info, const lldb_private::DataExtractor &gpregset, llvm::ArrayRef< lldb_private::CoreNote > notes)
 
 ~RegisterContextCorePOSIX_powerpc () override
 
bool ReadRegister (const lldb_private::RegisterInfo *reg_info, lldb_private::RegisterValue &value) override
 
bool WriteRegister (const lldb_private::RegisterInfo *reg_info, const lldb_private::RegisterValue &value) override
 
bool ReadAllRegisterValues (lldb::DataBufferSP &data_sp) override
 
bool WriteAllRegisterValues (const lldb::DataBufferSP &data_sp) override
 
bool HardwareSingleStep (bool enable) override
 
- Public Member Functions inherited from RegisterContextPOSIX_powerpc
 RegisterContextPOSIX_powerpc (lldb_private::Thread &thread, uint32_t concrete_frame_idx, lldb_private::RegisterInfoInterface *register_info)
 
 ~RegisterContextPOSIX_powerpc () override
 
void Invalidate ()
 
void InvalidateAllRegisters () override
 
size_t GetRegisterCount () override
 
virtual size_t GetGPRSize ()
 
virtual unsigned GetRegisterSize (unsigned reg)
 
virtual unsigned GetRegisterOffset (unsigned reg)
 
const lldb_private::RegisterInfo * GetRegisterInfoAtIndex (size_t reg) override
 
size_t GetRegisterSetCount () override
 
const lldb_private::RegisterSet * GetRegisterSet (size_t set) override
 
const char * GetRegisterName (unsigned reg)
 
- Public Member Functions inherited from lldb_private::RegisterContext
 RegisterContext (Thread &thread, uint32_t concrete_frame_idx)
 
 ~RegisterContext () override
 
void InvalidateIfNeeded (bool force)
 
virtual lldb::ByteOrder GetByteOrder ()
 
virtual bool ReadRegister (const RegisterInfo *reg_info, RegisterValue &reg_value)=0
 
virtual bool WriteRegister (const RegisterInfo *reg_info, const RegisterValue &reg_value)=0
 
virtual bool ReadAllRegisterValues (lldb_private::RegisterCheckpoint &reg_checkpoint)
 
virtual bool WriteAllRegisterValues (const lldb_private::RegisterCheckpoint &reg_checkpoint)
 
bool CopyFromRegisterContext (lldb::RegisterContextSP context)
 
virtual uint32_t ConvertRegisterKindToRegisterNumber (lldb::RegisterKind kind, uint32_t num)
 Convert from a given register numbering scheme to the lldb register numbering scheme. More...
 
virtual uint32_t NumSupportedHardwareBreakpoints ()
 
virtual uint32_t SetHardwareBreakpoint (lldb::addr_t addr, size_t size)
 
virtual bool ClearHardwareBreakpoint (uint32_t hw_idx)
 
virtual uint32_t NumSupportedHardwareWatchpoints ()
 
virtual uint32_t SetHardwareWatchpoint (lldb::addr_t addr, size_t size, bool read, bool write)
 
virtual bool ClearHardwareWatchpoint (uint32_t hw_index)
 
virtual Status ReadRegisterValueFromMemory (const lldb_private::RegisterInfo *reg_info, lldb::addr_t src_addr, uint32_t src_len, RegisterValue &reg_value)
 
virtual Status WriteRegisterValueToMemory (const lldb_private::RegisterInfo *reg_info, lldb::addr_t dst_addr, uint32_t dst_len, const RegisterValue &reg_value)
 
virtual lldb::tid_t GetThreadID () const
 
virtual ThreadGetThread ()
 
const RegisterInfo * GetRegisterInfoByName (llvm::StringRef reg_name, uint32_t start_idx=0)
 
const RegisterInfo * GetRegisterInfo (lldb::RegisterKind reg_kind, uint32_t reg_num)
 
uint64_t GetPC (uint64_t fail_value=LLDB_INVALID_ADDRESS)
 
bool GetPCForSymbolication (Address &address)
 Get an address suitable for symbolication. More...
 
bool SetPC (uint64_t pc)
 
bool SetPC (Address addr)
 
uint64_t GetSP (uint64_t fail_value=LLDB_INVALID_ADDRESS)
 
bool SetSP (uint64_t sp)
 
uint64_t GetFP (uint64_t fail_value=LLDB_INVALID_ADDRESS)
 
bool SetFP (uint64_t fp)
 
const char * GetRegisterName (uint32_t reg)
 
uint64_t GetReturnAddress (uint64_t fail_value=LLDB_INVALID_ADDRESS)
 
uint64_t GetFlags (uint64_t fail_value=0)
 
uint64_t ReadRegisterAsUnsigned (uint32_t reg, uint64_t fail_value)
 
uint64_t ReadRegisterAsUnsigned (const RegisterInfo *reg_info, uint64_t fail_value)
 
bool WriteRegisterFromUnsigned (uint32_t reg, uint64_t uval)
 
bool WriteRegisterFromUnsigned (const RegisterInfo *reg_info, uint64_t uval)
 
bool ConvertBetweenRegisterKinds (lldb::RegisterKind source_rk, uint32_t source_regnum, lldb::RegisterKind target_rk, uint32_t &target_regnum)
 
lldb::TargetSP CalculateTarget () override
 
lldb::ProcessSP CalculateProcess () override
 
lldb::ThreadSP CalculateThread () override
 
lldb::StackFrameSP CalculateStackFrame () override
 
void CalculateExecutionContext (ExecutionContext &exe_ctx) override
 Reconstruct the object's execution context into sc. More...
 
uint32_t GetStopID () const
 
void SetStopID (uint32_t stop_id)
 
- Public Member Functions inherited from lldb_private::ExecutionContextScope
virtual ~ExecutionContextScope ()=default
 

Protected Member Functions

bool ReadGPR () override
 
bool ReadFPR () override
 
bool ReadVMX () override
 
bool WriteGPR () override
 
bool WriteFPR () override
 
bool WriteVMX () override
 
- Protected Member Functions inherited from RegisterContextPOSIX_powerpc
virtual bool IsRegisterSetAvailable (size_t set_index)
 
virtual const lldb_private::RegisterInfo * GetRegisterInfo ()
 
bool IsGPR (unsigned reg)
 
bool IsFPR (unsigned reg)
 
bool IsVMX (unsigned reg)
 
- Protected Member Functions inherited from lldb_private::RegisterContext
virtual bool BehavesLikeZerothFrame () const
 Indicates that this frame is currently executing code, that the PC value is not a return-pc but an actual executing instruction. More...
 

Private Attributes

lldb::DataBufferSP m_gpr_buffer
 
lldb::DataBufferSP m_fpr_buffer
 
lldb::DataBufferSP m_vec_buffer
 
lldb_private::DataExtractor m_gpr
 
lldb_private::DataExtractor m_fpr
 
lldb_private::DataExtractor m_vec
 

Additional Inherited Members

- Protected Attributes inherited from RegisterContextPOSIX_powerpc
uint64_t m_gpr_powerpc [k_num_gpr_registers_powerpc]
 
uint64_t m_fpr_powerpc [k_num_fpr_registers_powerpc]
 
uint32_t m_vmx_powerpc [k_num_vmx_registers_powerpc][4]
 
std::unique_ptr< lldb_private::RegisterInfoInterfacem_register_info_up
 
- Protected Attributes inherited from lldb_private::RegisterContext
Threadm_thread
 
uint32_t m_concrete_frame_idx
 
uint32_t m_stop_id
 

Detailed Description

Definition at line 16 of file RegisterContextPOSIXCore_powerpc.h.

Constructor & Destructor Documentation

◆ RegisterContextCorePOSIX_powerpc()

RegisterContextCorePOSIX_powerpc::RegisterContextCorePOSIX_powerpc ( lldb_private::Thread thread,
lldb_private::RegisterInfoInterface register_info,
const lldb_private::DataExtractor gpregset,
llvm::ArrayRef< lldb_private::CoreNote notes 
)

◆ ~RegisterContextCorePOSIX_powerpc()

RegisterContextCorePOSIX_powerpc::~RegisterContextCorePOSIX_powerpc ( )
overridedefault

Member Function Documentation

◆ HardwareSingleStep()

bool RegisterContextCorePOSIX_powerpc::HardwareSingleStep ( bool  enable)
overridevirtual

Reimplemented from lldb_private::RegisterContext.

Definition at line 109 of file RegisterContextPOSIXCore_powerpc.cpp.

◆ ReadAllRegisterValues()

bool RegisterContextCorePOSIX_powerpc::ReadAllRegisterValues ( lldb::DataBufferSP &  data_sp)
overridevirtual

Reimplemented from lldb_private::RegisterContext.

Definition at line 94 of file RegisterContextPOSIXCore_powerpc.cpp.

◆ ReadFPR()

bool RegisterContextCorePOSIX_powerpc::ReadFPR ( )
overrideprotectedvirtual

Implements RegisterContextPOSIX_powerpc.

Definition at line 46 of file RegisterContextPOSIXCore_powerpc.cpp.

◆ ReadGPR()

bool RegisterContextCorePOSIX_powerpc::ReadGPR ( )
overrideprotectedvirtual

Implements RegisterContextPOSIX_powerpc.

Definition at line 44 of file RegisterContextPOSIXCore_powerpc.cpp.

◆ ReadRegister()

bool RegisterContextCorePOSIX_powerpc::ReadRegister ( const lldb_private::RegisterInfo *  reg_info,
lldb_private::RegisterValue value 
)
override

◆ ReadVMX()

bool RegisterContextCorePOSIX_powerpc::ReadVMX ( )
overrideprotectedvirtual

Implements RegisterContextPOSIX_powerpc.

Definition at line 48 of file RegisterContextPOSIXCore_powerpc.cpp.

◆ WriteAllRegisterValues()

bool RegisterContextCorePOSIX_powerpc::WriteAllRegisterValues ( const lldb::DataBufferSP &  data_sp)
overridevirtual

Reimplemented from lldb_private::RegisterContext.

Definition at line 104 of file RegisterContextPOSIXCore_powerpc.cpp.

◆ WriteFPR()

bool RegisterContextCorePOSIX_powerpc::WriteFPR ( )
overrideprotectedvirtual

Implements RegisterContextPOSIX_powerpc.

Definition at line 55 of file RegisterContextPOSIXCore_powerpc.cpp.

◆ WriteGPR()

bool RegisterContextCorePOSIX_powerpc::WriteGPR ( )
overrideprotectedvirtual

Implements RegisterContextPOSIX_powerpc.

Definition at line 50 of file RegisterContextPOSIXCore_powerpc.cpp.

◆ WriteRegister()

bool RegisterContextCorePOSIX_powerpc::WriteRegister ( const lldb_private::RegisterInfo *  reg_info,
const lldb_private::RegisterValue value 
)
override

Definition at line 99 of file RegisterContextPOSIXCore_powerpc.cpp.

◆ WriteVMX()

bool RegisterContextCorePOSIX_powerpc::WriteVMX ( )
overrideprotectedvirtual

Implements RegisterContextPOSIX_powerpc.

Definition at line 60 of file RegisterContextPOSIXCore_powerpc.cpp.

Member Data Documentation

◆ m_fpr

lldb_private::DataExtractor RegisterContextCorePOSIX_powerpc::m_fpr
private

◆ m_fpr_buffer

lldb::DataBufferSP RegisterContextCorePOSIX_powerpc::m_fpr_buffer
private

Definition at line 53 of file RegisterContextPOSIXCore_powerpc.h.

Referenced by RegisterContextCorePOSIX_powerpc().

◆ m_gpr

lldb_private::DataExtractor RegisterContextCorePOSIX_powerpc::m_gpr
private

◆ m_gpr_buffer

lldb::DataBufferSP RegisterContextCorePOSIX_powerpc::m_gpr_buffer
private

Definition at line 52 of file RegisterContextPOSIXCore_powerpc.h.

Referenced by RegisterContextCorePOSIX_powerpc().

◆ m_vec

lldb_private::DataExtractor RegisterContextCorePOSIX_powerpc::m_vec
private

◆ m_vec_buffer

lldb::DataBufferSP RegisterContextCorePOSIX_powerpc::m_vec_buffer
private

Definition at line 54 of file RegisterContextPOSIXCore_powerpc.h.

Referenced by RegisterContextCorePOSIX_powerpc().


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