LLDB mainline
lldb_private::NativeRegisterContextDBReg_arm Class Reference

#include <NativeRegisterContextDBReg_arm.h>

Inheritance diagram for lldb_private::NativeRegisterContextDBReg_arm:
[legend]

Public Member Functions

 NativeRegisterContextDBReg_arm ()
Public Member Functions inherited from lldb_private::NativeRegisterContextDBReg
 NativeRegisterContextDBReg (uint32_t enable_bit)
uint32_t NumSupportedHardwareBreakpoints () override
uint32_t SetHardwareBreakpoint (lldb::addr_t addr, size_t size) override
bool ClearHardwareBreakpoint (uint32_t hw_idx) override
Status ClearAllHardwareBreakpoints () override
Status GetHardwareBreakHitIndex (uint32_t &bp_index, lldb::addr_t trap_addr) override
uint32_t NumSupportedHardwareWatchpoints () override
uint32_t SetHardwareWatchpoint (lldb::addr_t addr, size_t size, uint32_t watch_flags) override
bool ClearHardwareWatchpoint (uint32_t hw_index) override
Status ClearAllHardwareWatchpoints () override
Status GetWatchpointHitIndex (uint32_t &wp_index, lldb::addr_t trap_addr) override
lldb::addr_t GetWatchpointHitAddress (uint32_t wp_index) override
lldb::addr_t GetWatchpointAddress (uint32_t wp_index) override
Public Member Functions inherited from lldb_private::NativeRegisterContextRegisterInfo
 NativeRegisterContextRegisterInfo (NativeThreadProtocol &thread, RegisterInfoInterface *register_info_interface)
 Construct a NativeRegisterContextRegisterInfo, taking ownership of the register_info_interface pointer.
uint32_t GetRegisterCount () const override
uint32_t GetUserRegisterCount () const override
const RegisterInfoGetRegisterInfoAtIndex (uint32_t reg_index) const override
const RegisterInfoInterfaceGetRegisterInfoInterface () const
Public Member Functions inherited from lldb_private::NativeRegisterContext
 NativeRegisterContext (NativeThreadProtocol &thread)
virtual ~NativeRegisterContext ()
const char * GetRegisterSetNameForRegisterAtIndex (uint32_t reg_index) const
virtual uint32_t GetRegisterSetCount () const =0
virtual const RegisterSetGetRegisterSet (uint32_t set_index) const =0
virtual Status ReadRegister (const RegisterInfo *reg_info, RegisterValue &reg_value)=0
virtual Status WriteRegister (const RegisterInfo *reg_info, const RegisterValue &reg_value)=0
virtual Status ReadAllRegisterValues (lldb::WritableDataBufferSP &data_sp)=0
virtual Status WriteAllRegisterValues (const lldb::DataBufferSP &data_sp)=0
uint32_t ConvertRegisterKindToRegisterNumber (uint32_t kind, uint32_t num) const
virtual Status ClearWatchpointHit (uint32_t hw_index)
virtual Status IsWatchpointHit (uint32_t wp_index, bool &is_hit)
virtual Status IsWatchpointVacant (uint32_t wp_index, bool &is_vacant)
virtual bool HardwareSingleStep (bool enable)
virtual Status ReadRegisterValueFromMemory (const lldb_private::RegisterInfo *reg_info, lldb::addr_t src_addr, size_t src_len, RegisterValue &reg_value)
virtual Status WriteRegisterValueToMemory (const lldb_private::RegisterInfo *reg_info, lldb::addr_t dst_addr, size_t dst_len, const RegisterValue &reg_value)
virtual lldb::tid_t GetThreadID () const
virtual NativeThreadProtocolGetThread ()
virtual std::vector< uint32_t > GetExpeditedRegisters (ExpeditedRegs expType) const
virtual bool RegisterOffsetIsDynamic () const
const RegisterInfoGetRegisterInfoByName (llvm::StringRef reg_name, uint32_t start_idx=0)
const RegisterInfoGetRegisterInfo (uint32_t reg_kind, uint32_t reg_num)
lldb::addr_t GetPC (lldb::addr_t fail_value=LLDB_INVALID_ADDRESS)
virtual lldb::addr_t GetPCfromBreakpointLocation (lldb::addr_t fail_value=LLDB_INVALID_ADDRESS)
Status SetPC (lldb::addr_t pc)
lldb::addr_t GetSP (lldb::addr_t fail_value=LLDB_INVALID_ADDRESS)
Status SetSP (lldb::addr_t sp)
lldb::addr_t GetFP (lldb::addr_t fail_value=LLDB_INVALID_ADDRESS)
Status SetFP (lldb::addr_t fp)
const char * GetRegisterName (uint32_t reg)
lldb::addr_t GetReturnAddress (lldb::addr_t fail_value=LLDB_INVALID_ADDRESS)
lldb::addr_t GetFlags (lldb::addr_t fail_value=0)
lldb::addr_t ReadRegisterAsUnsigned (uint32_t reg, lldb::addr_t fail_value)
lldb::addr_t ReadRegisterAsUnsigned (const RegisterInfo *reg_info, lldb::addr_t fail_value)
Status WriteRegisterFromUnsigned (uint32_t reg, uint64_t uval)
Status WriteRegisterFromUnsigned (const RegisterInfo *reg_info, uint64_t uval)

Private Member Functions

uint32_t GetWatchpointSize (uint32_t wp_index) override
std::optional< WatchpointDetailsAdjustWatchpoint (const WatchpointDetails &details) override
BreakpointDetails AdjustBreakpoint (const BreakpointDetails &details) override
uint32_t MakeBreakControlValue (size_t size) override
uint32_t MakeWatchControlValue (size_t size, uint32_t watch_flags) override
bool ValidateBreakpoint (size_t size, lldb::addr_t addr) override

Additional Inherited Members

Public Types inherited from lldb_private::NativeRegisterContextDBReg
enum  DREGType { eDREGTypeWATCH = 0 , eDREGTypeBREAK }
Protected Types inherited from lldb_private::NativeRegisterContextDBReg
using BreakpointDetails = WatchpointDetails
Protected Member Functions inherited from lldb_private::NativeRegisterContextDBReg
bool WatchpointIsEnabled (uint32_t wp_index)
bool BreakpointIsEnabled (uint32_t bp_index)
virtual llvm::Error ReadHardwareDebugInfo ()=0
virtual llvm::Error WriteHardwareDebugRegs (DREGType hwbType)=0
virtual lldb::addr_t FixWatchpointHitAddress (lldb::addr_t hit_addr)
Protected Attributes inherited from lldb_private::NativeRegisterContextDBReg
std::array< struct DREG, 16 > m_hbp_regs
std::array< struct DREG, 16 > m_hwp_regs
uint32_t m_max_hbp_supported
uint32_t m_max_hwp_supported
const uint32_t m_hw_dbg_enable_bit
Protected Attributes inherited from lldb_private::NativeRegisterContextRegisterInfo
std::unique_ptr< RegisterInfoInterfacem_register_info_interface_up
Protected Attributes inherited from lldb_private::NativeRegisterContext
NativeThreadProtocolm_thread

Detailed Description

Definition at line 16 of file NativeRegisterContextDBReg_arm.h.

Constructor & Destructor Documentation

◆ NativeRegisterContextDBReg_arm()

lldb_private::NativeRegisterContextDBReg_arm::NativeRegisterContextDBReg_arm ( )
inline

Member Function Documentation

◆ AdjustBreakpoint()

◆ AdjustWatchpoint()

std::optional< NativeRegisterContextDBReg::WatchpointDetails > NativeRegisterContextDBReg_arm::AdjustWatchpoint ( const WatchpointDetails & details)
overrideprivatevirtual

◆ GetWatchpointSize()

uint32_t NativeRegisterContextDBReg_arm::GetWatchpointSize ( uint32_t wp_index)
overrideprivatevirtual

◆ MakeBreakControlValue()

uint32_t NativeRegisterContextDBReg_arm::MakeBreakControlValue ( size_t size)
overrideprivatevirtual

◆ MakeWatchControlValue()

uint32_t NativeRegisterContextDBReg_arm::MakeWatchControlValue ( size_t size,
uint32_t watch_flags )
overrideprivatevirtual

◆ ValidateBreakpoint()

bool lldb_private::NativeRegisterContextDBReg_arm::ValidateBreakpoint ( size_t size,
lldb::addr_t addr )
inlineoverrideprivatevirtual

Reimplemented from lldb_private::NativeRegisterContextDBReg.

Definition at line 33 of file NativeRegisterContextDBReg_arm.h.


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