LLDB  mainline
RegisterContextPOSIXCore_arm.h
Go to the documentation of this file.
1 //===-- RegisterContextPOSIXCore_arm.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_SOURCE_PLUGINS_PROCESS_ELF_CORE_REGISTERCONTEXTPOSIXCORE_ARM_H
10 #define LLDB_SOURCE_PLUGINS_PROCESS_ELF_CORE_REGISTERCONTEXTPOSIXCORE_ARM_H
11 
16 
18 public:
20  lldb_private::Thread &thread,
21  std::unique_ptr<RegisterInfoPOSIX_arm> register_info,
22  const lldb_private::DataExtractor &gpregset,
23  llvm::ArrayRef<lldb_private::CoreNote> notes);
24 
26 
27  bool ReadRegister(const lldb_private::RegisterInfo *reg_info,
28  lldb_private::RegisterValue &value) override;
29 
30  bool WriteRegister(const lldb_private::RegisterInfo *reg_info,
31  const lldb_private::RegisterValue &value) override;
32 
33  bool ReadAllRegisterValues(lldb::DataBufferSP &data_sp) override;
34 
35  bool WriteAllRegisterValues(const lldb::DataBufferSP &data_sp) override;
36 
37  bool HardwareSingleStep(bool enable) override;
38 
39 protected:
40  bool ReadGPR() override;
41 
42  bool ReadFPR() override;
43 
44  bool WriteGPR() override;
45 
46  bool WriteFPR() override;
47 
48 private:
49  lldb::DataBufferSP m_gpr_buffer;
51 };
52 
53 #endif // LLDB_SOURCE_PLUGINS_PROCESS_ELF_CORE_REGISTERCONTEXTPOSIXCORE_ARM_H
RegisterContextCorePOSIX_arm::ReadAllRegisterValues
bool ReadAllRegisterValues(lldb::DataBufferSP &data_sp) override
Definition: RegisterContextPOSIXCore_arm.cpp:57
RegisterContextCorePOSIX_arm::WriteAllRegisterValues
bool WriteAllRegisterValues(const lldb::DataBufferSP &data_sp) override
Definition: RegisterContextPOSIXCore_arm.cpp:67
lldb_private::RegisterValue
Definition: RegisterValue.h:28
RegisterContextCorePOSIX_arm::ReadGPR
bool ReadGPR() override
Definition: RegisterContextPOSIXCore_arm.cpp:30
RegisterContextPOSIX_arm.h
RegisterUtilities.h
RegisterContextCorePOSIX_arm
Definition: RegisterContextPOSIXCore_arm.h:17
RegisterContextCorePOSIX_arm::m_gpr
lldb_private::DataExtractor m_gpr
Definition: RegisterContextPOSIXCore_arm.h:50
RegisterContextPOSIX_arm
Definition: RegisterContextPOSIX_arm.h:17
RegisterContextCorePOSIX_arm::WriteGPR
bool WriteGPR() override
Definition: RegisterContextPOSIXCore_arm.cpp:34
lldb_private::DataExtractor
Definition: DataExtractor.h:48
lldb_private::Thread
Definition: Thread.h:60
RegisterContextCorePOSIX_arm::m_gpr_buffer
lldb::DataBufferSP m_gpr_buffer
Definition: RegisterContextPOSIXCore_arm.h:49
RegisterContextCorePOSIX_arm::ReadRegister
bool ReadRegister(const lldb_private::RegisterInfo *reg_info, lldb_private::RegisterValue &value) override
Definition: RegisterContextPOSIXCore_arm.cpp:44
RegisterContextCorePOSIX_arm::ReadFPR
bool ReadFPR() override
Definition: RegisterContextPOSIXCore_arm.cpp:32
DataExtractor.h
RegisterContextCorePOSIX_arm::HardwareSingleStep
bool HardwareSingleStep(bool enable) override
Definition: RegisterContextPOSIXCore_arm.cpp:72
RegisterContextCorePOSIX_arm::RegisterContextCorePOSIX_arm
RegisterContextCorePOSIX_arm(lldb_private::Thread &thread, std::unique_ptr< RegisterInfoPOSIX_arm > register_info, const lldb_private::DataExtractor &gpregset, llvm::ArrayRef< lldb_private::CoreNote > notes)
Definition: RegisterContextPOSIXCore_arm.cpp:18
RegisterContextCorePOSIX_arm::WriteRegister
bool WriteRegister(const lldb_private::RegisterInfo *reg_info, const lldb_private::RegisterValue &value) override
Definition: RegisterContextPOSIXCore_arm.cpp:62
RegisterContextCorePOSIX_arm::WriteFPR
bool WriteFPR() override
Definition: RegisterContextPOSIXCore_arm.cpp:39
DataBufferHeap.h
RegisterContextCorePOSIX_arm::~RegisterContextCorePOSIX_arm
~RegisterContextCorePOSIX_arm() override