LLDB  mainline
NativeRegisterContextDBReg_x86.h
Go to the documentation of this file.
1 //===-- NativeRegisterContextDBReg_x86.h ------------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #ifndef lldb_NativeRegisterContextDBReg_x86_h
10 #define lldb_NativeRegisterContextDBReg_x86_h
11 
13 
14 namespace lldb_private {
15 
17  : public virtual NativeRegisterContextRegisterInfo {
18 public:
19  // NB: This constructor is here only because gcc<=6.5 requires a virtual base
20  // class initializer on abstract class (even though it is never used). It can
21  // be deleted once we move to gcc>=7.0.
23  : NativeRegisterContextRegisterInfo(thread, nullptr) {}
24 
25  Status IsWatchpointHit(uint32_t wp_index, bool &is_hit) override;
26 
28  lldb::addr_t trap_addr) override;
29 
30  Status IsWatchpointVacant(uint32_t wp_index, bool &is_vacant) override;
31 
32  bool ClearHardwareWatchpoint(uint32_t wp_index) override;
33 
34  Status ClearWatchpointHit(uint32_t wp_index) override;
35 
37 
39  uint32_t watch_flags,
40  uint32_t wp_index);
41 
43  uint32_t watch_flags) override;
44 
45  lldb::addr_t GetWatchpointAddress(uint32_t wp_index) override;
46 
48 
49  const RegisterInfo *GetDR(int num) const;
50 };
51 
52 } // namespace lldb_private
53 
54 #endif // #ifndef lldb_NativeRegisterContextDBReg_x86_h
lldb_private::NativeRegisterContextDBReg_x86::GetWatchpointAddress
lldb::addr_t GetWatchpointAddress(uint32_t wp_index) override
Definition: NativeRegisterContextDBReg_x86.cpp:264
lldb_private::NativeThreadProtocol
Definition: NativeThreadProtocol.h:20
lldb::addr_t
uint64_t addr_t
Definition: lldb-types.h:83
lldb_private::NativeRegisterContextDBReg_x86
Definition: NativeRegisterContextDBReg_x86.h:16
lldb_private::NativeRegisterContextDBReg_x86::SetHardwareWatchpoint
uint32_t SetHardwareWatchpoint(lldb::addr_t addr, size_t size, uint32_t watch_flags) override
Definition: NativeRegisterContextDBReg_x86.cpp:243
lldb_private::NativeRegisterContextDBReg_x86::SetHardwareWatchpointWithIndex
Status SetHardwareWatchpointWithIndex(lldb::addr_t addr, size_t size, uint32_t watch_flags, uint32_t wp_index)
Definition: NativeRegisterContextDBReg_x86.cpp:143
lldb_private::NativeRegisterContextDBReg_x86::NativeRegisterContextDBReg_x86
NativeRegisterContextDBReg_x86(NativeThreadProtocol &thread)
Definition: NativeRegisterContextDBReg_x86.h:22
NativeRegisterContextRegisterInfo.h
lldb_private::NativeRegisterContextDBReg_x86::IsWatchpointHit
Status IsWatchpointHit(uint32_t wp_index, bool &is_hit) override
Definition: NativeRegisterContextDBReg_x86.cpp:95
lldb_private::Status
Definition: Status.h:44
lldb_private::NativeRegisterContextRegisterInfo
Definition: NativeRegisterContextRegisterInfo.h:18
lldb_private::NativeRegisterContextDBReg_x86::IsWatchpointVacant
Status IsWatchpointVacant(uint32_t wp_index, bool &is_vacant) override
Definition: NativeRegisterContextDBReg_x86.cpp:128
uint32_t
lldb_private::NativeRegisterContextDBReg_x86::ClearWatchpointHit
Status ClearWatchpointHit(uint32_t wp_index) override
Definition: NativeRegisterContextDBReg_x86.cpp:220
lldb_private::NativeRegisterContextDBReg_x86::GetWatchpointHitIndex
Status GetWatchpointHitIndex(uint32_t &wp_index, lldb::addr_t trap_addr) override
Definition: NativeRegisterContextDBReg_x86.cpp:111
lldb_private::NativeRegisterContextDBReg_x86::ClearAllHardwareWatchpoints
Status ClearAllHardwareWatchpoints() override
Definition: NativeRegisterContextDBReg_x86.cpp:233
lldb_private::NativeRegisterContextDBReg_x86::NumSupportedHardwareWatchpoints
uint32_t NumSupportedHardwareWatchpoints() override
Definition: NativeRegisterContextDBReg_x86.cpp:273
lldb_private
A class that represents a running process on the host machine.
Definition: SBCommandInterpreterRunOptions.h:16
lldb_private::NativeRegisterContextDBReg_x86::ClearHardwareWatchpoint
bool ClearHardwareWatchpoint(uint32_t wp_index) override
Definition: NativeRegisterContextDBReg_x86.cpp:205
lldb_private::NativeRegisterContextDBReg_x86::GetDR
const RegisterInfo * GetDR(int num) const
Definition: NativeRegisterContextDBReg_x86.cpp:83