ARM64_DWARF_Registers.h revision 314564
1275072Semaste//===-- ARM64_DWARF_Registers.h ---------------------------------*- C++ -*-===//
2275072Semaste//
3275072Semaste//                     The LLVM Compiler Infrastructure
4275072Semaste//
5275072Semaste// This file is distributed under the University of Illinois Open Source
6275072Semaste// License. See LICENSE.TXT for details.
7275072Semaste//
8275072Semaste//===----------------------------------------------------------------------===//
9275072Semaste
10275072Semaste#ifndef utility_ARM64_DWARF_Registers_h_
11275072Semaste#define utility_ARM64_DWARF_Registers_h_
12275072Semaste
13275072Semaste#include "lldb/lldb-private.h"
14275072Semaste
15275072Semastenamespace arm64_dwarf {
16275072Semaste
17314564Sdimenum {
18314564Sdim  x0 = 0,
19314564Sdim  x1,
20314564Sdim  x2,
21314564Sdim  x3,
22314564Sdim  x4,
23314564Sdim  x5,
24314564Sdim  x6,
25314564Sdim  x7,
26314564Sdim  x8,
27314564Sdim  x9,
28314564Sdim  x10,
29314564Sdim  x11,
30314564Sdim  x12,
31314564Sdim  x13,
32314564Sdim  x14,
33314564Sdim  x15,
34314564Sdim  x16,
35314564Sdim  x17,
36314564Sdim  x18,
37314564Sdim  x19,
38314564Sdim  x20,
39314564Sdim  x21,
40314564Sdim  x22,
41314564Sdim  x23,
42314564Sdim  x24,
43314564Sdim  x25,
44314564Sdim  x26,
45314564Sdim  x27,
46314564Sdim  x28,
47314564Sdim  x29 = 29,
48314564Sdim  fp = x29,
49314564Sdim  x30 = 30,
50314564Sdim  lr = x30,
51314564Sdim  x31 = 31,
52314564Sdim  sp = x31,
53314564Sdim  pc = 32,
54314564Sdim  cpsr = 33,
55314564Sdim  // 34-63 reserved
56275072Semaste
57314564Sdim  // V0-V31 (128 bit vector registers)
58314564Sdim  v0 = 64,
59314564Sdim  v1,
60314564Sdim  v2,
61314564Sdim  v3,
62314564Sdim  v4,
63314564Sdim  v5,
64314564Sdim  v6,
65314564Sdim  v7,
66314564Sdim  v8,
67314564Sdim  v9,
68314564Sdim  v10,
69314564Sdim  v11,
70314564Sdim  v12,
71314564Sdim  v13,
72314564Sdim  v14,
73314564Sdim  v15,
74314564Sdim  v16,
75314564Sdim  v17,
76314564Sdim  v18,
77314564Sdim  v19,
78314564Sdim  v20,
79314564Sdim  v21,
80314564Sdim  v22,
81314564Sdim  v23,
82314564Sdim  v24,
83314564Sdim  v25,
84314564Sdim  v26,
85314564Sdim  v27,
86314564Sdim  v28,
87314564Sdim  v29,
88314564Sdim  v30,
89314564Sdim  v31
90314564Sdim
91314564Sdim  // 96-127 reserved
92275072Semaste};
93275072Semaste
94314564Sdimconst char *GetRegisterName(unsigned reg_num, bool altnernate_name);
95275072Semaste
96314564Sdimbool GetRegisterInfo(unsigned reg_num, lldb_private::RegisterInfo &reg_info);
97275072Semaste
98314564Sdim} // namespace arm64_dwarf
99314564Sdim
100275072Semaste#endif // utility_ARM64_DWARF_Registers_h_
101