9#if defined(__aarch64__) || defined(_M_ARM64)
10#ifndef liblldb_NativeRegisterContextWindows_arm64_h_
11#define liblldb_NativeRegisterContextWindows_arm64_h_
23class NativeRegisterContextWindows_arm64
27 NativeRegisterContextWindows_arm64(
const ArchSpec &target_arch,
28 NativeThreadProtocol &native_thread);
30 uint32_t GetRegisterSetCount()
const override;
32 const RegisterSet *GetRegisterSet(uint32_t set_index)
const override;
34 Status ReadRegister(
const RegisterInfo *reg_info,
35 RegisterValue ®_value)
override;
37 Status WriteRegister(
const RegisterInfo *reg_info,
38 const RegisterValue ®_value)
override;
45 Status GPRRead(
const uint32_t reg, RegisterValue ®_value);
47 Status GPRWrite(
const uint32_t reg,
const RegisterValue ®_value);
49 Status FPRRead(
const uint32_t reg, RegisterValue ®_value);
51 Status FPRWrite(
const uint32_t reg,
const RegisterValue ®_value);
54 bool IsGPR(uint32_t reg_index)
const;
56 bool IsFPR(uint32_t reg_index)
const;
Status WriteHardwareDebugRegs(int hwbType, ::pid_t tid, uint32_t max_supported, const std::array< NativeRegisterContextDBReg::DREG, 16 > ®s)
Status ReadHardwareDebugInfo(::pid_t tid, uint32_t &max_hwp_supported, uint32_t &max_hbp_supported)
A class that represents a running process on the host machine.
std::shared_ptr< lldb_private::DataBuffer > DataBufferSP
std::shared_ptr< lldb_private::WritableDataBuffer > WritableDataBufferSP