LLDB mainline
|
#include <RegisterContextDarwin_arm64.h>
Classes | |
struct | DBG |
struct | EXC |
struct | FPU |
struct | GPR |
struct | VReg |
Public Member Functions | |
RegisterContextDarwin_arm64 (lldb_private::Thread &thread, uint32_t concrete_frame_idx) | |
~RegisterContextDarwin_arm64 () override | |
void | InvalidateAllRegisters () override |
size_t | GetRegisterCount () override |
const lldb_private::RegisterInfo * | GetRegisterInfoAtIndex (size_t reg) override |
size_t | GetRegisterSetCount () override |
const lldb_private::RegisterSet * | GetRegisterSet (size_t set) 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::WritableDataBufferSP &data_sp) override |
bool | WriteAllRegisterValues (const lldb::DataBufferSP &data_sp) override |
uint32_t | ConvertRegisterKindToRegisterNumber (lldb::RegisterKind kind, uint32_t num) override |
Convert from a given register numbering scheme to the lldb register numbering scheme. | |
uint32_t | NumSupportedHardwareWatchpoints () override |
uint32_t | SetHardwareWatchpoint (lldb::addr_t addr, size_t size, bool read, bool write) override |
bool | ClearHardwareWatchpoint (uint32_t hw_index) override |
Public Member Functions inherited from lldb_private::RegisterContext | |
RegisterContext (Thread &thread, uint32_t concrete_frame_idx) | |
~RegisterContext () override | |
void | InvalidateIfNeeded (bool force) |
virtual void | InvalidateAllRegisters ()=0 |
virtual size_t | GetRegisterCount ()=0 |
virtual const RegisterInfo * | GetRegisterInfoAtIndex (size_t reg)=0 |
virtual size_t | GetRegisterSetCount ()=0 |
virtual const RegisterSet * | GetRegisterSet (size_t reg_set)=0 |
virtual lldb::ByteOrder | GetByteOrder () |
virtual bool | ReadRegister (const RegisterInfo *reg_info, RegisterValue ®_value)=0 |
virtual bool | WriteRegister (const RegisterInfo *reg_info, const RegisterValue ®_value)=0 |
virtual bool | ReadAllRegisterValues (lldb::WritableDataBufferSP &data_sp) |
virtual bool | WriteAllRegisterValues (const lldb::DataBufferSP &data_sp) |
virtual bool | RegisterWriteCausesReconfigure (const llvm::StringRef name) |
virtual bool | ReconfigureRegisterInfo () |
virtual bool | ReadAllRegisterValues (lldb_private::RegisterCheckpoint ®_checkpoint) |
virtual bool | WriteAllRegisterValues (const lldb_private::RegisterCheckpoint ®_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. | |
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 bool | HardwareSingleStep (bool enable) |
virtual Status | ReadRegisterValueFromMemory (const lldb_private::RegisterInfo *reg_info, lldb::addr_t src_addr, uint32_t src_len, RegisterValue ®_value) |
virtual Status | WriteRegisterValueToMemory (const lldb_private::RegisterInfo *reg_info, lldb::addr_t dst_addr, uint32_t dst_len, const RegisterValue ®_value) |
virtual lldb::tid_t | GetThreadID () const |
virtual Thread & | GetThread () |
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) |
uint64_t | GetThreadPointer (uint64_t fail_value=LLDB_INVALID_ADDRESS) |
bool | GetPCForSymbolication (Address &address) |
Get an address suitable for symbolication. | |
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. | |
uint32_t | GetStopID () const |
void | SetStopID (uint32_t stop_id) |
Public Member Functions inherited from lldb_private::ExecutionContextScope | |
virtual | ~ExecutionContextScope ()=default |
virtual lldb::TargetSP | CalculateTarget ()=0 |
virtual lldb::ProcessSP | CalculateProcess ()=0 |
virtual lldb::ThreadSP | CalculateThread ()=0 |
virtual lldb::StackFrameSP | CalculateStackFrame ()=0 |
virtual void | CalculateExecutionContext (ExecutionContext &exe_ctx)=0 |
Reconstruct the object's execution context into sc. | |
Static Public Member Functions | |
static void | LogDBGRegisters (lldb_private::Log *log, const DBG &dbg) |
Protected Types | |
enum | { GPRRegSet = 6 , FPURegSet = 17 , EXCRegSet = 7 , DBGRegSet = 15 } |
enum | { GPRWordCount = sizeof(GPR) / sizeof(uint32_t) , FPUWordCount = sizeof(FPU) / sizeof(uint32_t) , EXCWordCount , DBGWordCount = sizeof(DBG) / sizeof(uint32_t) } |
enum | { Read = 0 , Write = 1 , kNumErrors = 2 } |
Protected Member Functions | |
void | InvalidateAllRegisterStates () |
int | GetError (int flavor, uint32_t err_idx) const |
bool | SetError (int flavor, uint32_t err_idx, int err) |
bool | RegisterSetIsCached (int set) const |
int | ReadGPR (bool force) |
int | ReadFPU (bool force) |
int | ReadEXC (bool force) |
int | ReadDBG (bool force) |
int | WriteGPR () |
int | WriteFPU () |
int | WriteEXC () |
int | WriteDBG () |
virtual int | DoReadGPR (lldb::tid_t tid, int flavor, GPR &gpr) |
virtual int | DoReadFPU (lldb::tid_t tid, int flavor, FPU &fpu)=0 |
virtual int | DoReadEXC (lldb::tid_t tid, int flavor, EXC &exc)=0 |
virtual int | DoReadDBG (lldb::tid_t tid, int flavor, DBG &dbg)=0 |
virtual int | DoWriteGPR (lldb::tid_t tid, int flavor, const GPR &gpr)=0 |
virtual int | DoWriteFPU (lldb::tid_t tid, int flavor, const FPU &fpu)=0 |
virtual int | DoWriteEXC (lldb::tid_t tid, int flavor, const EXC &exc)=0 |
virtual int | DoWriteDBG (lldb::tid_t tid, int flavor, const DBG &dbg)=0 |
int | ReadRegisterSet (uint32_t set, bool force) |
int | WriteRegisterSet (uint32_t set) |
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. | |
Static Protected Member Functions | |
static uint32_t | GetRegisterNumber (uint32_t reg_kind, uint32_t reg_num) |
static int | GetSetForNativeRegNum (int reg_num) |
static size_t | GetRegisterInfosCount () |
static const lldb_private::RegisterInfo * | GetRegisterInfos () |
Protected Attributes | |
GPR | gpr |
FPU | fpu |
EXC | exc |
DBG | dbg |
int | gpr_errs [2] |
int | fpu_errs [2] |
int | exc_errs [2] |
int | dbg_errs [2] |
Protected Attributes inherited from lldb_private::RegisterContext | |
Thread & | m_thread |
uint32_t | m_concrete_frame_idx |
uint32_t | m_stop_id |
Definition at line 28 of file RegisterContextDarwin_arm64.h.
|
protected |
Enumerator | |
---|---|
GPRRegSet | |
FPURegSet | |
EXCRegSet | |
DBGRegSet |
Definition at line 105 of file RegisterContextDarwin_arm64.h.
|
protected |
Enumerator | |
---|---|
GPRWordCount | |
FPUWordCount | |
EXCWordCount | |
DBGWordCount |
Definition at line 112 of file RegisterContextDarwin_arm64.h.
|
protected |
Enumerator | |
---|---|
Read | |
Write | |
kNumErrors |
Definition at line 120 of file RegisterContextDarwin_arm64.h.
RegisterContextDarwin_arm64::RegisterContextDarwin_arm64 | ( | lldb_private::Thread & | thread, |
uint32_t | concrete_frame_idx | ||
) |
Definition at line 95 of file RegisterContextDarwin_arm64.cpp.
References exc_errs, fpu_errs, gpr_errs, and kNumErrors.
|
overridedefault |
|
overridevirtual |
Reimplemented from lldb_private::RegisterContext.
Definition at line 1018 of file RegisterContextDarwin_arm64.cpp.
References dbg, KERN_SUCCESS, NumSupportedHardwareWatchpoints(), ReadDBG(), RegisterContextDarwin_arm64::DBG::wcr, and WriteDBG().
|
overridevirtual |
Convert from a given register numbering scheme to the lldb register numbering scheme.
There may be multiple ways to enumerate the registers for a given architecture. ABI references will specify one to be used with DWARF, the register numberings from process plugin, there may be a variation used for eh_frame unwind instructions (e.g. on Darwin), and so on. Register 5 by itself is meaningless - RegisterKind enumeration tells you what context that number should be translated as.
Inside lldb, register numbers are in the eRegisterKindLLDB scheme; arguments which take a register number should take one in that scheme.
eRegisterKindGeneric is a special numbering scheme which gives us constant values for the pc, frame register, stack register, etc., for use within lldb. They may not be defined for all architectures but it allows generic code to translate these common registers into the lldb numbering scheme.
This method translates a given register kind + register number into the eRegisterKindLLDB register numbering.
[in] | kind | The register numbering scheme (RegisterKind) that the following register number is in. |
[in] | num | A register number in the 'kind' register numbering scheme. |
Reimplemented from lldb_private::RegisterContext.
Definition at line 685 of file RegisterContextDarwin_arm64.cpp.
References arm64_dwarf::cpsr, arm64_ehframe::cpsr, lldb::eRegisterKindDWARF, lldb::eRegisterKindEHFrame, lldb::eRegisterKindGeneric, lldb::eRegisterKindLLDB, arm64_dwarf::fp, arm64_ehframe::fp, gpr_cpsr, gpr_lr, gpr_pc, gpr_sp, LLDB_INVALID_REGNUM, LLDB_REGNUM_GENERIC_FLAGS, LLDB_REGNUM_GENERIC_FP, LLDB_REGNUM_GENERIC_PC, LLDB_REGNUM_GENERIC_RA, LLDB_REGNUM_GENERIC_SP, arm64_dwarf::lr, arm64_ehframe::lr, arm64_dwarf::pc, arm64_ehframe::pc, arm64_dwarf::sp, arm64_ehframe::sp, arm64_dwarf::v0, arm64_dwarf::v1, arm64_dwarf::v10, arm64_dwarf::v11, arm64_dwarf::v12, arm64_dwarf::v13, arm64_dwarf::v14, arm64_dwarf::v15, arm64_dwarf::v16, arm64_dwarf::v17, arm64_dwarf::v18, arm64_dwarf::v19, arm64_dwarf::v2, arm64_dwarf::v20, arm64_dwarf::v21, arm64_dwarf::v22, arm64_dwarf::v23, arm64_dwarf::v24, arm64_dwarf::v25, arm64_dwarf::v26, arm64_dwarf::v27, arm64_dwarf::v28, arm64_dwarf::v29, arm64_dwarf::v3, arm64_dwarf::v30, arm64_dwarf::v31, arm64_dwarf::v4, arm64_dwarf::v5, arm64_dwarf::v6, arm64_dwarf::v7, arm64_dwarf::v8, arm64_dwarf::v9, arm64_dwarf::x0, arm64_ehframe::x0, arm64_dwarf::x1, arm64_ehframe::x1, arm64_dwarf::x10, arm64_ehframe::x10, arm64_dwarf::x11, arm64_ehframe::x11, arm64_dwarf::x12, arm64_ehframe::x12, arm64_dwarf::x13, arm64_ehframe::x13, arm64_dwarf::x14, arm64_ehframe::x14, arm64_dwarf::x15, arm64_ehframe::x15, arm64_dwarf::x16, arm64_ehframe::x16, arm64_dwarf::x17, arm64_ehframe::x17, arm64_dwarf::x18, arm64_ehframe::x18, arm64_dwarf::x19, arm64_ehframe::x19, arm64_dwarf::x2, arm64_ehframe::x2, arm64_dwarf::x20, arm64_ehframe::x20, arm64_dwarf::x21, arm64_ehframe::x21, arm64_dwarf::x22, arm64_ehframe::x22, arm64_dwarf::x23, arm64_ehframe::x23, arm64_dwarf::x24, arm64_ehframe::x24, arm64_dwarf::x25, arm64_ehframe::x25, arm64_dwarf::x26, arm64_ehframe::x26, arm64_dwarf::x27, arm64_ehframe::x27, arm64_dwarf::x28, arm64_ehframe::x28, arm64_dwarf::x3, arm64_ehframe::x3, arm64_dwarf::x4, arm64_ehframe::x4, arm64_dwarf::x5, arm64_ehframe::x5, arm64_dwarf::x6, arm64_ehframe::x6, arm64_dwarf::x7, arm64_ehframe::x7, arm64_dwarf::x8, arm64_ehframe::x8, arm64_dwarf::x9, and arm64_ehframe::x9.
|
protectedpure virtual |
Implemented in RegisterContextDarwin_arm64_Mach, and RegisterContextKDP_arm64.
Referenced by ReadDBG().
|
protectedpure virtual |
Implemented in RegisterContextDarwin_arm64_Mach, and RegisterContextKDP_arm64.
Referenced by ReadEXC().
|
protectedpure virtual |
Implemented in RegisterContextDarwin_arm64_Mach, and RegisterContextKDP_arm64.
Referenced by ReadFPU().
|
inlineprotectedvirtual |
Reimplemented in RegisterContextDarwin_arm64_Mach, and RegisterContextKDP_arm64.
Definition at line 202 of file RegisterContextDarwin_arm64.h.
Referenced by ReadGPR().
|
protectedpure virtual |
Implemented in RegisterContextDarwin_arm64_Mach, and RegisterContextKDP_arm64.
Referenced by WriteDBG().
|
protectedpure virtual |
Implemented in RegisterContextDarwin_arm64_Mach, and RegisterContextKDP_arm64.
Referenced by WriteEXC().
|
protectedpure virtual |
Implemented in RegisterContextDarwin_arm64_Mach, and RegisterContextKDP_arm64.
Referenced by WriteFPU().
|
protectedpure virtual |
Implemented in RegisterContextDarwin_arm64_Mach, and RegisterContextKDP_arm64.
Referenced by WriteGPR().
|
inlineprotected |
Definition at line 137 of file RegisterContextDarwin_arm64.h.
References dbg_errs, DBGRegSet, exc_errs, EXCRegSet, fpu_errs, FPURegSet, gpr_errs, GPRRegSet, and kNumErrors.
Referenced by ReadDBG(), ReadEXC(), ReadFPU(), ReadGPR(), RegisterSetIsCached(), WriteDBG(), WriteEXC(), WriteFPU(), and WriteGPR().
|
overridevirtual |
Implements lldb_private::RegisterContext.
Definition at line 112 of file RegisterContextDarwin_arm64.cpp.
References k_num_register_infos, and k_num_registers.
|
overridevirtual |
Implements lldb_private::RegisterContext.
Definition at line 118 of file RegisterContextDarwin_arm64.cpp.
References k_num_register_infos, and k_num_registers.
|
staticprotected |
Definition at line 129 of file RegisterContextDarwin_arm64.cpp.
|
staticprotected |
Definition at line 125 of file RegisterContextDarwin_arm64.cpp.
References k_num_register_infos.
|
staticprotected |
|
overridevirtual |
Implements lldb_private::RegisterContext.
Definition at line 154 of file RegisterContextDarwin_arm64.cpp.
References g_reg_sets, and k_num_regsets.
|
overridevirtual |
Implements lldb_private::RegisterContext.
Definition at line 150 of file RegisterContextDarwin_arm64.cpp.
References k_num_regsets.
|
staticprotected |
Definition at line 161 of file RegisterContextDarwin_arm64.cpp.
References exc_far, EXCRegSet, FPURegSet, GPRRegSet, and k_num_registers.
Referenced by ReadRegister(), and WriteRegister().
|
overridevirtual |
Implements lldb_private::RegisterContext.
Definition at line 108 of file RegisterContextDarwin_arm64.cpp.
References InvalidateAllRegisterStates().
|
inlineprotected |
Definition at line 131 of file RegisterContextDarwin_arm64.h.
References EXCRegSet, FPURegSet, GPRRegSet, Read, and SetError().
Referenced by InvalidateAllRegisters().
|
static |
Definition at line 282 of file RegisterContextDarwin_arm64.cpp.
References RegisterContextDarwin_arm64::DBG::bcr, RegisterContextDarwin_arm64::DBG::bvr, dbg, LLDB_LOGF, RegisterContextDarwin_arm64::DBG::wcr, and RegisterContextDarwin_arm64::DBG::wvr.
|
overridevirtual |
Reimplemented from lldb_private::RegisterContext.
Definition at line 919 of file RegisterContextDarwin_arm64.cpp.
References UINT32_MAX.
Referenced by ClearHardwareWatchpoint(), and SetHardwareWatchpoint().
|
overridevirtual |
Reimplemented from lldb_private::RegisterContext.
Definition at line 644 of file RegisterContextDarwin_arm64.cpp.
References exc, fpu, gpr, KERN_SUCCESS, ReadEXC(), ReadFPU(), ReadGPR(), and REG_CONTEXT_SIZE.
|
protected |
Definition at line 195 of file RegisterContextDarwin_arm64.cpp.
References dbg, DBGRegSet, DoReadDBG(), GetError(), lldb_private::RegisterContext::GetThreadID(), Read, RegisterSetIsCached(), and SetError().
Referenced by ClearHardwareWatchpoint(), ReadRegisterSet(), and SetHardwareWatchpoint().
|
protected |
Definition at line 187 of file RegisterContextDarwin_arm64.cpp.
References DoReadEXC(), exc, EXCRegSet, GetError(), lldb_private::RegisterContext::GetThreadID(), Read, RegisterSetIsCached(), and SetError().
Referenced by ReadAllRegisterValues(), and ReadRegisterSet().
|
protected |
Definition at line 179 of file RegisterContextDarwin_arm64.cpp.
References DoReadFPU(), fpu, FPURegSet, GetError(), lldb_private::RegisterContext::GetThreadID(), Read, RegisterSetIsCached(), and SetError().
Referenced by ReadAllRegisterValues(), and ReadRegisterSet().
|
protected |
Definition at line 171 of file RegisterContextDarwin_arm64.cpp.
References DoReadGPR(), GetError(), lldb_private::RegisterContext::GetThreadID(), gpr, GPRRegSet, Read, RegisterSetIsCached(), and SetError().
Referenced by ReadAllRegisterValues(), and ReadRegisterSet().
|
overridevirtual |
Implements lldb_private::RegisterContext.
Definition at line 293 of file RegisterContextDarwin_arm64.cpp.
References lldb_private::RegisterInfo::byte_size, RegisterContextDarwin_arm64::VReg::bytes, RegisterContextDarwin_arm64::GPR::cpsr, lldb::eRegisterKindLLDB, RegisterContextDarwin_arm64::EXC::esr, exc, exc_exception, exc_far, RegisterContextDarwin_arm64::EXC::exception, RegisterContextDarwin_arm64::EXC::far, RegisterContextDarwin_arm64::GPR::fp, RegisterContextDarwin_arm64::FPU::fpcr, RegisterContextDarwin_arm64::FPU::fpsr, fpu, fpu_s0, fpu_s1, fpu_s10, fpu_s11, fpu_s12, fpu_s13, fpu_s14, fpu_s15, fpu_s16, fpu_s17, fpu_s18, fpu_s19, fpu_s2, fpu_s20, fpu_s21, fpu_s22, fpu_s23, fpu_s24, fpu_s25, fpu_s26, fpu_s27, fpu_s28, fpu_s29, fpu_s3, fpu_s30, fpu_s31, fpu_s4, fpu_s5, fpu_s6, fpu_s7, fpu_s8, fpu_s9, lldb_private::DataExtractor::GetDouble(), lldb_private::DataExtractor::GetFloat(), lldb_private::DataExtractor::GetMaxU64(), lldb_private::Thread::GetProcess(), GetSetForNativeRegNum(), gpr, gpr_cpsr, gpr_lr, gpr_pc, gpr_sp, lldb_private::endian::InlHostByteOrder(), KERN_SUCCESS, lldb_private::RegisterInfo::kinds, RegisterContextDarwin_arm64::GPR::lr, lldb_private::RegisterContext::m_thread, RegisterContextDarwin_arm64::GPR::pc, ReadRegisterSet(), lldb_private::RegisterValue::SetBytes(), lldb_private::RegisterValue::SetDouble(), lldb_private::RegisterValue::SetFloat(), lldb_private::RegisterValue::SetUInt32(), lldb_private::RegisterValue::SetUInt64(), lldb_private::RegisterValue::SetValueToInvalid(), RegisterContextDarwin_arm64::GPR::sp, RegisterContextDarwin_arm64::FPU::v, and RegisterContextDarwin_arm64::GPR::x.
|
protected |
Definition at line 247 of file RegisterContextDarwin_arm64.cpp.
References DBGRegSet, EXCRegSet, FPURegSet, GPRRegSet, KERN_INVALID_ARGUMENT, ReadDBG(), ReadEXC(), ReadFPU(), and ReadGPR().
Referenced by ReadRegister(), and WriteRegister().
|
inlineprotected |
Definition at line 183 of file RegisterContextDarwin_arm64.h.
References GetError(), and Read.
Referenced by ReadDBG(), ReadEXC(), ReadFPU(), ReadGPR(), WriteDBG(), WriteEXC(), WriteFPU(), WriteGPR(), and WriteRegisterSet().
|
inlineprotected |
Definition at line 157 of file RegisterContextDarwin_arm64.h.
References DBGRegSet, exc_errs, EXCRegSet, fpu_errs, FPURegSet, gpr_errs, GPRRegSet, and kNumErrors.
Referenced by InvalidateAllRegisterStates(), ReadDBG(), ReadEXC(), ReadFPU(), ReadGPR(), RegisterContextDarwin_arm64_Mach::SetRegisterDataFrom_LC_THREAD(), WriteDBG(), WriteEXC(), WriteFPU(), and WriteGPR().
|
overridevirtual |
Reimplemented from lldb_private::RegisterContext.
Definition at line 938 of file RegisterContextDarwin_arm64.cpp.
References dbg, KERN_SUCCESS, LLDB_INVALID_INDEX32, NumSupportedHardwareWatchpoints(), ReadDBG(), S_USER, RegisterContextDarwin_arm64::DBG::wcr, WCR_ENABLE, WCR_LOAD, WCR_STORE, WriteDBG(), and RegisterContextDarwin_arm64::DBG::wvr.
|
overridevirtual |
Reimplemented from lldb_private::RegisterContext.
Definition at line 662 of file RegisterContextDarwin_arm64.cpp.
References exc, fpu, gpr, KERN_SUCCESS, REG_CONTEXT_SIZE, WriteEXC(), WriteFPU(), and WriteGPR().
|
protected |
Definition at line 236 of file RegisterContextDarwin_arm64.cpp.
References dbg, DBGRegSet, DoWriteDBG(), GetError(), lldb_private::RegisterContext::GetThreadID(), KERN_INVALID_ARGUMENT, Read, RegisterSetIsCached(), SetError(), and Write.
Referenced by ClearHardwareWatchpoint(), SetHardwareWatchpoint(), and WriteRegisterSet().
|
protected |
Definition at line 225 of file RegisterContextDarwin_arm64.cpp.
References DoWriteEXC(), exc, EXCRegSet, GetError(), lldb_private::RegisterContext::GetThreadID(), KERN_INVALID_ARGUMENT, Read, RegisterSetIsCached(), SetError(), and Write.
Referenced by WriteAllRegisterValues(), and WriteRegisterSet().
|
protected |
Definition at line 214 of file RegisterContextDarwin_arm64.cpp.
References DoWriteFPU(), fpu, FPURegSet, GetError(), lldb_private::RegisterContext::GetThreadID(), KERN_INVALID_ARGUMENT, Read, RegisterSetIsCached(), SetError(), and Write.
Referenced by WriteAllRegisterValues(), and WriteRegisterSet().
|
protected |
Definition at line 203 of file RegisterContextDarwin_arm64.cpp.
References DoWriteGPR(), GetError(), lldb_private::RegisterContext::GetThreadID(), gpr, GPRRegSet, KERN_INVALID_ARGUMENT, Read, RegisterSetIsCached(), SetError(), and Write.
Referenced by WriteAllRegisterValues(), and WriteRegisterSet().
|
overridevirtual |
Implements lldb_private::RegisterContext.
Definition at line 535 of file RegisterContextDarwin_arm64.cpp.
References RegisterContextDarwin_arm64::VReg::bytes, lldb::eRegisterKindLLDB, RegisterContextDarwin_arm64::EXC::esr, exc, exc_exception, exc_far, RegisterContextDarwin_arm64::EXC::exception, RegisterContextDarwin_arm64::EXC::far, RegisterContextDarwin_arm64::FPU::fpcr, RegisterContextDarwin_arm64::FPU::fpsr, fpu, lldb_private::RegisterValue::GetAsUInt32(), lldb_private::RegisterValue::GetAsUInt64(), lldb_private::RegisterValue::GetBytes(), lldb_private::RegisterValue::GetByteSize(), GetSetForNativeRegNum(), gpr, gpr_cpsr, gpr_lr, gpr_pc, gpr_sp, KERN_SUCCESS, lldb_private::RegisterInfo::kinds, ReadRegisterSet(), RegisterContextDarwin_arm64::FPU::v, WriteRegisterSet(), and RegisterContextDarwin_arm64::GPR::x.
|
protected |
Definition at line 263 of file RegisterContextDarwin_arm64.cpp.
References DBGRegSet, EXCRegSet, FPURegSet, GPRRegSet, KERN_INVALID_ARGUMENT, RegisterSetIsCached(), WriteDBG(), WriteEXC(), WriteFPU(), and WriteGPR().
Referenced by WriteRegister().
|
protected |
Definition at line 125 of file RegisterContextDarwin_arm64.h.
Referenced by ClearHardwareWatchpoint(), RegisterContextKDP_arm64::DoReadDBG(), RegisterContextKDP_arm64::DoWriteDBG(), LogDBGRegisters(), ReadDBG(), SetHardwareWatchpoint(), and WriteDBG().
|
protected |
Definition at line 129 of file RegisterContextDarwin_arm64.h.
Referenced by GetError().
|
protected |
Definition at line 124 of file RegisterContextDarwin_arm64.h.
Referenced by RegisterContextKDP_arm64::DoReadEXC(), RegisterContextKDP_arm64::DoWriteEXC(), ReadAllRegisterValues(), ReadEXC(), ReadRegister(), RegisterContextDarwin_arm64_Mach::SetRegisterDataFrom_LC_THREAD(), WriteAllRegisterValues(), WriteEXC(), and WriteRegister().
|
protected |
Definition at line 128 of file RegisterContextDarwin_arm64.h.
Referenced by GetError(), RegisterContextDarwin_arm64(), and SetError().
|
protected |
Definition at line 123 of file RegisterContextDarwin_arm64.h.
Referenced by RegisterContextKDP_arm64::DoReadFPU(), RegisterContextKDP_arm64::DoWriteFPU(), ReadAllRegisterValues(), ReadFPU(), ReadRegister(), RegisterContextDarwin_arm64_Mach::SetRegisterDataFrom_LC_THREAD(), WriteAllRegisterValues(), WriteFPU(), and WriteRegister().
|
protected |
Definition at line 127 of file RegisterContextDarwin_arm64.h.
Referenced by GetError(), RegisterContextDarwin_arm64(), and SetError().
|
protected |
Definition at line 122 of file RegisterContextDarwin_arm64.h.
Referenced by RegisterContextKDP_arm64::DoReadGPR(), RegisterContextKDP_arm64::DoWriteGPR(), ReadAllRegisterValues(), ReadGPR(), ReadRegister(), RegisterContextDarwin_arm64_Mach::SetRegisterDataFrom_LC_THREAD(), WriteAllRegisterValues(), WriteGPR(), and WriteRegister().
|
protected |
Definition at line 126 of file RegisterContextDarwin_arm64.h.
Referenced by GetError(), RegisterContextDarwin_arm64(), and SetError().