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