summaryrefslogtreecommitdiff
path: root/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.h
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2017-01-02 19:26:05 +0000
committerDimitry Andric <dim@FreeBSD.org>2017-01-02 19:26:05 +0000
commit14f1b3e8826ce43b978db93a62d1166055db5394 (patch)
tree0a00ad8d3498783fe0193f3b656bca17c4c8697d /source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.h
parent4ee8c119c71a06dcad1e0fecc8c675e480e59337 (diff)
Notes
Diffstat (limited to 'source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.h')
-rw-r--r--source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.h166
1 files changed, 67 insertions, 99 deletions
diff --git a/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.h b/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.h
index 20c32075379c..1b25609205df 100644
--- a/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.h
+++ b/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.h
@@ -7,7 +7,7 @@
//
//===----------------------------------------------------------------------===//
-#if defined (__mips__)
+#if defined(__mips__)
#ifndef lldb_NativeRegisterContextLinux_mips64_h
#define lldb_NativeRegisterContextLinux_mips64_h
@@ -21,147 +21,115 @@
namespace lldb_private {
namespace process_linux {
- class NativeProcessLinux;
+class NativeProcessLinux;
- class NativeRegisterContextLinux_mips64 : public NativeRegisterContextLinux
- {
- public:
- NativeRegisterContextLinux_mips64 (const ArchSpec& target_arch,
- NativeThreadProtocol &native_thread,
- uint32_t concrete_frame_idx);
+class NativeRegisterContextLinux_mips64 : public NativeRegisterContextLinux {
+public:
+ NativeRegisterContextLinux_mips64(const ArchSpec &target_arch,
+ NativeThreadProtocol &native_thread,
+ uint32_t concrete_frame_idx);
- uint32_t
- GetRegisterSetCount () const override;
+ uint32_t GetRegisterSetCount() const override;
- lldb::addr_t
- GetPCfromBreakpointLocation (lldb::addr_t fail_value = LLDB_INVALID_ADDRESS) override;
+ lldb::addr_t GetPCfromBreakpointLocation(
+ lldb::addr_t fail_value = LLDB_INVALID_ADDRESS) override;
- lldb::addr_t
- GetWatchpointHitAddress (uint32_t wp_index) override;
+ lldb::addr_t GetWatchpointHitAddress(uint32_t wp_index) override;
- const RegisterSet *
- GetRegisterSet (uint32_t set_index) const override;
+ const RegisterSet *GetRegisterSet(uint32_t set_index) const override;
- Error
- ReadRegister (const RegisterInfo *reg_info, RegisterValue &reg_value) override;
+ Error ReadRegister(const RegisterInfo *reg_info,
+ RegisterValue &reg_value) override;
- Error
- WriteRegister (const RegisterInfo *reg_info, const RegisterValue &reg_value) override;
+ Error WriteRegister(const RegisterInfo *reg_info,
+ const RegisterValue &reg_value) override;
- Error
- ReadAllRegisterValues (lldb::DataBufferSP &data_sp) override;
+ Error ReadAllRegisterValues(lldb::DataBufferSP &data_sp) override;
- Error
- WriteAllRegisterValues (const lldb::DataBufferSP &data_sp) override;
+ Error WriteAllRegisterValues(const lldb::DataBufferSP &data_sp) override;
- Error
- ReadCP1();
+ Error ReadCP1();
- Error
- WriteCP1();
+ Error WriteCP1();
- Error
- IsWatchpointHit (uint32_t wp_index, bool &is_hit) override;
+ uint8_t *ReturnFPOffset(uint8_t reg_index, uint32_t byte_offset);
- uint8_t *ReturnFPOffset(uint8_t reg_index, uint32_t byte_offset);
+ Error IsWatchpointHit(uint32_t wp_index, bool &is_hit) override;
+ Error GetWatchpointHitIndex(uint32_t &wp_index,
+ lldb::addr_t trap_addr) override;
- Error
- GetWatchpointHitIndex(uint32_t &wp_index, lldb::addr_t trap_addr) override;
+ Error IsWatchpointVacant(uint32_t wp_index, bool &is_vacant) override;
- Error
- IsWatchpointVacant (uint32_t wp_index, bool &is_vacant) override;
+ bool ClearHardwareWatchpoint(uint32_t wp_index) override;
- bool
- ClearHardwareWatchpoint (uint32_t wp_index) override;
+ Error ClearAllHardwareWatchpoints() override;
- Error
- ClearAllHardwareWatchpoints () override;
+ Error SetHardwareWatchpointWithIndex(lldb::addr_t addr, size_t size,
+ uint32_t watch_flags, uint32_t wp_index);
- Error
- SetHardwareWatchpointWithIndex (lldb::addr_t addr, size_t size,
- uint32_t watch_flags, uint32_t wp_index);
+ uint32_t SetHardwareWatchpoint(lldb::addr_t addr, size_t size,
+ uint32_t watch_flags) override;
- uint32_t
- SetHardwareWatchpoint (lldb::addr_t addr, size_t size,
- uint32_t watch_flags) override;
+ lldb::addr_t GetWatchpointAddress(uint32_t wp_index) override;
- lldb::addr_t
- GetWatchpointAddress (uint32_t wp_index) override;
+ uint32_t NumSupportedHardwareWatchpoints() override;
- uint32_t
- NumSupportedHardwareWatchpoints () override;
+ static bool IsMSAAvailable();
- static bool
- IsMSAAvailable();
-
- protected:
-
- Error
- Read_SR_Config(uint32_t offset, const char *reg_name, uint32_t size,
+protected:
+ Error Read_SR_Config(uint32_t offset, const char *reg_name, uint32_t size,
RegisterValue &value);
- Error
- ReadRegisterRaw(uint32_t reg_index, RegisterValue &value) override;
+ Error ReadRegisterRaw(uint32_t reg_index, RegisterValue &value) override;
- Error
- DoReadWatchPointRegisterValue(lldb::tid_t tid, void* watch_readback);
-
- Error
- WriteRegisterRaw(uint32_t reg_index,
+ Error WriteRegisterRaw(uint32_t reg_index,
const RegisterValue &value) override;
- Error
- DoWriteWatchPointRegisterValue(lldb::tid_t tid, void* watch_readback);
+ Error DoReadWatchPointRegisterValue(lldb::tid_t tid, void *watch_readback);
+
+ Error DoWriteWatchPointRegisterValue(lldb::tid_t tid, void *watch_readback);
- bool
- IsFR0();
+ bool IsFR0();
- bool
- IsFRE();
+ bool IsFRE();
- bool
- IsFPR(uint32_t reg_index) const;
+ bool IsFPR(uint32_t reg_index) const;
- bool
- IsMSA(uint32_t reg_index) const;
+ bool IsMSA(uint32_t reg_index) const;
- void*
- GetGPRBuffer() override { return &m_gpr; }
+ void *GetGPRBuffer() override { return &m_gpr; }
- void*
- GetFPRBuffer() override { return &m_fpr; }
+ void *GetFPRBuffer() override { return &m_fpr; }
- size_t
- GetFPRSize() override { return sizeof(FPR_linux_mips); }
+ size_t GetFPRSize() override { return sizeof(FPR_linux_mips); }
- private:
- // Info about register ranges.
- struct RegInfo
- {
- uint32_t num_registers;
- uint32_t num_gpr_registers;
- uint32_t num_fpr_registers;
+private:
+ // Info about register ranges.
+ struct RegInfo {
+ uint32_t num_registers;
+ uint32_t num_gpr_registers;
+ uint32_t num_fpr_registers;
- uint32_t last_gpr;
- uint32_t first_fpr;
- uint32_t last_fpr;
- uint32_t first_msa;
- uint32_t last_msa;
- };
+ uint32_t last_gpr;
+ uint32_t first_fpr;
+ uint32_t last_fpr;
+ uint32_t first_msa;
+ uint32_t last_msa;
+ };
- RegInfo m_reg_info;
+ RegInfo m_reg_info;
- GPR_linux_mips m_gpr;
+ GPR_linux_mips m_gpr;
- FPR_linux_mips m_fpr;
+ FPR_linux_mips m_fpr;
- MSA_linux_mips m_msa;
+ MSA_linux_mips m_msa;
- lldb::addr_t hw_addr_map[MAX_NUM_WP];
+ lldb::addr_t hw_addr_map[MAX_NUM_WP];
- IOVEC_mips m_iovec;
- };
+ IOVEC_mips m_iovec;
+};
} // namespace process_linux
} // namespace lldb_private