• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //===-- RegisterContextKDP_arm.h --------------------------------*- C++ -*-===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 
10 #ifndef liblldb_RegisterContextKDP_arm_h_
11 #define liblldb_RegisterContextKDP_arm_h_
12 
13 // C Includes
14 
15 // C++ Includes
16 // Other libraries and framework includes
17 // Project includes
18 #include "Plugins/Process/Utility/RegisterContextDarwin_arm.h"
19 
20 class ThreadKDP;
21 
22 class RegisterContextKDP_arm : public RegisterContextDarwin_arm
23 {
24 public:
25 
26     RegisterContextKDP_arm (ThreadKDP &thread,
27                             uint32_t concrete_frame_idx);
28 
29     virtual
30     ~RegisterContextKDP_arm();
31 
32 protected:
33 
34     virtual int
35     DoReadGPR (lldb::tid_t tid, int flavor, GPR &gpr);
36 
37     int
38     DoReadFPU (lldb::tid_t tid, int flavor, FPU &fpu);
39 
40     int
41     DoReadEXC (lldb::tid_t tid, int flavor, EXC &exc);
42 
43     int
44     DoReadDBG (lldb::tid_t tid, int flavor, DBG &dbg);
45 
46     int
47     DoWriteGPR (lldb::tid_t tid, int flavor, const GPR &gpr);
48 
49     int
50     DoWriteFPU (lldb::tid_t tid, int flavor, const FPU &fpu);
51 
52     int
53     DoWriteEXC (lldb::tid_t tid, int flavor, const EXC &exc);
54 
55     int
56     DoWriteDBG (lldb::tid_t tid, int flavor, const DBG &dbg);
57 
58     ThreadKDP &m_kdp_thread;
59 };
60 
61 #endif  // liblldb_RegisterContextKDP_arm_h_
62