1 //===-- RegisterContextKDP_arm64.h --------------------------------*- C++
4 // The LLVM Compiler Infrastructure
6 // This file is distributed under the University of Illinois Open Source
7 // License. See LICENSE.TXT for details.
9 //===----------------------------------------------------------------------===//
11 #ifndef liblldb_RegisterContextKDP_arm64_h_
12 #define liblldb_RegisterContextKDP_arm64_h_
17 // Other libraries and framework includes
19 #include "Plugins/Process/Utility/RegisterContextDarwin_arm64.h"
23 class RegisterContextKDP_arm64 : public RegisterContextDarwin_arm64 {
25 RegisterContextKDP_arm64(ThreadKDP &thread, uint32_t concrete_frame_idx);
27 virtual ~RegisterContextKDP_arm64();
30 virtual int DoReadGPR(lldb::tid_t tid, int flavor, GPR &gpr);
32 int DoReadFPU(lldb::tid_t tid, int flavor, FPU &fpu);
34 int DoReadEXC(lldb::tid_t tid, int flavor, EXC &exc);
36 int DoReadDBG(lldb::tid_t tid, int flavor, DBG &dbg);
38 int DoWriteGPR(lldb::tid_t tid, int flavor, const GPR &gpr);
40 int DoWriteFPU(lldb::tid_t tid, int flavor, const FPU &fpu);
42 int DoWriteEXC(lldb::tid_t tid, int flavor, const EXC &exc);
44 int DoWriteDBG(lldb::tid_t tid, int flavor, const DBG &dbg);
46 ThreadKDP &m_kdp_thread;
49 #endif // liblldb_RegisterContextKDP_arm64_h_