9#if defined(__x86_64__) || defined(_M_X64)
10#ifndef liblldb_NativeRegisterContextWindows_WoW64_h_
11#define liblldb_NativeRegisterContextWindows_WoW64_h_
20class NativeThreadWindows;
22class NativeRegisterContextWindows_WoW64 :
public NativeRegisterContextWindows {
24 NativeRegisterContextWindows_WoW64(
const ArchSpec &target_arch,
25 NativeThreadProtocol &native_thread);
27 uint32_t GetRegisterSetCount()
const override;
29 const RegisterSet *GetRegisterSet(uint32_t set_index)
const override;
31 Status ReadRegister(
const RegisterInfo *reg_info,
32 RegisterValue ®_value)
override;
34 Status WriteRegister(
const RegisterInfo *reg_info,
35 const RegisterValue ®_value)
override;
41 Status IsWatchpointHit(uint32_t wp_index,
bool &is_hit)
override;
43 Status GetWatchpointHitIndex(uint32_t &wp_index,
46 Status IsWatchpointVacant(uint32_t wp_index,
bool &is_vacant)
override;
48 bool ClearHardwareWatchpoint(uint32_t wp_index)
override;
50 Status ClearAllHardwareWatchpoints()
override;
52 uint32_t SetHardwareWatchpoint(
lldb::addr_t addr,
size_t size,
53 uint32_t watch_flags)
override;
55 lldb::addr_t GetWatchpointAddress(uint32_t wp_index)
override;
57 uint32_t NumSupportedHardwareWatchpoints()
override;
60 Status GPRRead(
const uint32_t reg, RegisterValue ®_value);
61 Status GPRWrite(
const uint32_t reg,
const RegisterValue ®_value);
63 Status DRRead(
const uint32_t reg, RegisterValue ®_value);
64 Status DRWrite(
const uint32_t reg,
const RegisterValue ®_value);
68 size_t size, uint32_t flags);
70 bool IsGPR(uint32_t reg_index)
const;
71 bool IsDR(uint32_t reg_index)
const;
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