1//===-- lldb-ppc64-register-enums.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_ppc64_register_enums_h
10#define lldb_ppc64_register_enums_h
11
12// LLDB register codes (e.g. RegisterKind == eRegisterKindLLDB)
13
14// Internal codes for all ppc64 registers.
15enum {
16  k_first_gpr_ppc64,
17  gpr_r0_ppc64 = k_first_gpr_ppc64,
18  gpr_r1_ppc64,
19  gpr_r2_ppc64,
20  gpr_r3_ppc64,
21  gpr_r4_ppc64,
22  gpr_r5_ppc64,
23  gpr_r6_ppc64,
24  gpr_r7_ppc64,
25  gpr_r8_ppc64,
26  gpr_r9_ppc64,
27  gpr_r10_ppc64,
28  gpr_r11_ppc64,
29  gpr_r12_ppc64,
30  gpr_r13_ppc64,
31  gpr_r14_ppc64,
32  gpr_r15_ppc64,
33  gpr_r16_ppc64,
34  gpr_r17_ppc64,
35  gpr_r18_ppc64,
36  gpr_r19_ppc64,
37  gpr_r20_ppc64,
38  gpr_r21_ppc64,
39  gpr_r22_ppc64,
40  gpr_r23_ppc64,
41  gpr_r24_ppc64,
42  gpr_r25_ppc64,
43  gpr_r26_ppc64,
44  gpr_r27_ppc64,
45  gpr_r28_ppc64,
46  gpr_r29_ppc64,
47  gpr_r30_ppc64,
48  gpr_r31_ppc64,
49  gpr_cr_ppc64,
50  gpr_msr_ppc64,
51  gpr_xer_ppc64,
52  gpr_lr_ppc64,
53  gpr_ctr_ppc64,
54  gpr_pc_ppc64,
55  k_last_gpr_ppc64 = gpr_pc_ppc64,
56
57  k_first_fpr_ppc64,
58  fpr_f0_ppc64 = k_first_fpr_ppc64,
59  fpr_f1_ppc64,
60  fpr_f2_ppc64,
61  fpr_f3_ppc64,
62  fpr_f4_ppc64,
63  fpr_f5_ppc64,
64  fpr_f6_ppc64,
65  fpr_f7_ppc64,
66  fpr_f8_ppc64,
67  fpr_f9_ppc64,
68  fpr_f10_ppc64,
69  fpr_f11_ppc64,
70  fpr_f12_ppc64,
71  fpr_f13_ppc64,
72  fpr_f14_ppc64,
73  fpr_f15_ppc64,
74  fpr_f16_ppc64,
75  fpr_f17_ppc64,
76  fpr_f18_ppc64,
77  fpr_f19_ppc64,
78  fpr_f20_ppc64,
79  fpr_f21_ppc64,
80  fpr_f22_ppc64,
81  fpr_f23_ppc64,
82  fpr_f24_ppc64,
83  fpr_f25_ppc64,
84  fpr_f26_ppc64,
85  fpr_f27_ppc64,
86  fpr_f28_ppc64,
87  fpr_f29_ppc64,
88  fpr_f30_ppc64,
89  fpr_f31_ppc64,
90  fpr_fpscr_ppc64,
91  k_last_fpr_ppc64 = fpr_fpscr_ppc64,
92
93  k_first_vmx_ppc64,
94  vmx_vr0_ppc64 = k_first_vmx_ppc64,
95  vmx_vr1_ppc64,
96  vmx_vr2_ppc64,
97  vmx_vr3_ppc64,
98  vmx_vr4_ppc64,
99  vmx_vr5_ppc64,
100  vmx_vr6_ppc64,
101  vmx_vr7_ppc64,
102  vmx_vr8_ppc64,
103  vmx_vr9_ppc64,
104  vmx_vr10_ppc64,
105  vmx_vr11_ppc64,
106  vmx_vr12_ppc64,
107  vmx_vr13_ppc64,
108  vmx_vr14_ppc64,
109  vmx_vr15_ppc64,
110  vmx_vr16_ppc64,
111  vmx_vr17_ppc64,
112  vmx_vr18_ppc64,
113  vmx_vr19_ppc64,
114  vmx_vr20_ppc64,
115  vmx_vr21_ppc64,
116  vmx_vr22_ppc64,
117  vmx_vr23_ppc64,
118  vmx_vr24_ppc64,
119  vmx_vr25_ppc64,
120  vmx_vr26_ppc64,
121  vmx_vr27_ppc64,
122  vmx_vr28_ppc64,
123  vmx_vr29_ppc64,
124  vmx_vr30_ppc64,
125  vmx_vr31_ppc64,
126  vmx_vscr_ppc64,
127  vmx_vrsave_ppc64,
128  k_last_vmx_ppc64 = vmx_vrsave_ppc64,
129
130  k_num_registers_ppc64,
131  k_num_gpr_registers_ppc64 = k_last_gpr_ppc64 - k_first_gpr_ppc64 + 1,
132  k_num_fpr_registers_ppc64 = k_last_fpr_ppc64 - k_first_fpr_ppc64 + 1,
133  k_num_vmx_registers_ppc64 = k_last_vmx_ppc64 - k_first_vmx_ppc64 + 1,
134};
135
136#endif // #ifndef lldb_ppc64_register_enums_h
137