summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.h
diff options
context:
space:
mode:
authorMohit K. Bhakkad <mohit.bhakkad@gmail.com>2015-06-18 04:53:18 +0000
committerMohit K. Bhakkad <mohit.bhakkad@gmail.com>2015-06-18 04:53:18 +0000
commit3579996399bb2b53f21313ed527896b99bd24b50 (patch)
treeb39882e9e7a1baa2db71aa722ae4e30e4ef47ee6 /lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.h
parent58e5bdb091b7484185b9510229ef7a8a1b1ea44e (diff)
downloadbcm5719-llvm-3579996399bb2b53f21313ed527896b99bd24b50.tar.gz
bcm5719-llvm-3579996399bb2b53f21313ed527896b99bd24b50.zip
[LLDB][MIPS] Hardware Watchpoints for MIPS
Reviewers: clayborg, jingham. Subscribers: jaydeep, bhushan, dsanders, sagar, lldb-commits. Differential Revision: http://reviews.llvm.org/D9142 llvm-svn: 239991
Diffstat (limited to 'lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.h')
-rw-r--r--lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.h b/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.h
index 1c24c91c386..be26a26da23 100644
--- a/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.h
+++ b/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.h
@@ -16,6 +16,8 @@
#include "Plugins/Process/Utility/RegisterContext_mips64.h"
#include "Plugins/Process/Utility/lldb-mips64-register-enums.h"
+#define MAX_NUM_WP 8
+
namespace lldb_private {
namespace process_linux {
@@ -56,6 +58,9 @@ namespace process_linux {
IsWatchpointHit (uint32_t wp_index, bool &is_hit) override;
Error
+ GetWatchpointHitIndex(uint32_t &wp_index, lldb::addr_t trap_addr) override;
+
+ Error
IsWatchpointVacant (uint32_t wp_index, bool &is_vacant) override;
bool
@@ -90,6 +95,14 @@ namespace process_linux {
const char* reg_name,
const RegisterValue &value) override;
+ NativeProcessLinux::OperationUP
+ GetReadWatchPointRegisterValue(lldb::tid_t tid,
+ void* watch_readback);
+
+ NativeProcessLinux::OperationUP
+ GetWriteWatchPointRegisterValue(lldb::tid_t tid,
+ void* watch_readback);
+
bool
IsFR0();
@@ -123,6 +136,8 @@ namespace process_linux {
uint64_t m_gpr_mips64[k_num_gpr_registers_mips64];
FPR_mips m_fpr;
+
+ lldb::addr_t hw_addr_map[MAX_NUM_WP];
};
} // namespace process_linux
OpenPOWER on IntegriCloud