1//===-- lldb-s390x-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_SOURCE_PLUGINS_PROCESS_UTILITY_LLDB_S390X_REGISTER_ENUMS_H
10#define LLDB_SOURCE_PLUGINS_PROCESS_UTILITY_LLDB_S390X_REGISTER_ENUMS_H
11
12namespace lldb_private {
13// LLDB register codes (e.g. RegisterKind == eRegisterKindLLDB)
14
15// Internal codes for all s390x registers.
16enum {
17 k_first_gpr_s390x,
18 lldb_r0_s390x = k_first_gpr_s390x,
19 lldb_r1_s390x,
20 lldb_r2_s390x,
21 lldb_r3_s390x,
22 lldb_r4_s390x,
23 lldb_r5_s390x,
24 lldb_r6_s390x,
25 lldb_r7_s390x,
26 lldb_r8_s390x,
27 lldb_r9_s390x,
28 lldb_r10_s390x,
29 lldb_r11_s390x,
30 lldb_r12_s390x,
31 lldb_r13_s390x,
32 lldb_r14_s390x,
33 lldb_r15_s390x,
34 lldb_acr0_s390x,
35 lldb_acr1_s390x,
36 lldb_acr2_s390x,
37 lldb_acr3_s390x,
38 lldb_acr4_s390x,
39 lldb_acr5_s390x,
40 lldb_acr6_s390x,
41 lldb_acr7_s390x,
42 lldb_acr8_s390x,
43 lldb_acr9_s390x,
44 lldb_acr10_s390x,
45 lldb_acr11_s390x,
46 lldb_acr12_s390x,
47 lldb_acr13_s390x,
48 lldb_acr14_s390x,
49 lldb_acr15_s390x,
50 lldb_pswm_s390x,
51 lldb_pswa_s390x,
52 k_last_gpr_s390x = lldb_pswa_s390x,
53
54 k_first_fpr_s390x,
55 lldb_f0_s390x = k_first_fpr_s390x,
56 lldb_f1_s390x,
57 lldb_f2_s390x,
58 lldb_f3_s390x,
59 lldb_f4_s390x,
60 lldb_f5_s390x,
61 lldb_f6_s390x,
62 lldb_f7_s390x,
63 lldb_f8_s390x,
64 lldb_f9_s390x,
65 lldb_f10_s390x,
66 lldb_f11_s390x,
67 lldb_f12_s390x,
68 lldb_f13_s390x,
69 lldb_f14_s390x,
70 lldb_f15_s390x,
71 lldb_fpc_s390x,
72 k_last_fpr_s390x = lldb_fpc_s390x,
73
74 // These are only available on Linux.
75 k_first_linux_s390x,
76 lldb_orig_r2_s390x = k_first_linux_s390x,
77 lldb_last_break_s390x,
78 lldb_system_call_s390x,
79 k_last_linux_s390x = lldb_system_call_s390x,
80
81 k_num_registers_s390x,
82 k_num_gpr_registers_s390x = k_last_gpr_s390x - k_first_gpr_s390x + 1,
83 k_num_fpr_registers_s390x = k_last_fpr_s390x - k_first_fpr_s390x + 1,
84 k_num_linux_registers_s390x = k_last_linux_s390x - k_first_linux_s390x + 1,
85 k_num_user_registers_s390x =
86 k_num_gpr_registers_s390x + k_num_fpr_registers_s390x,
87};
88}
89
90#endif // LLDB_SOURCE_PLUGINS_PROCESS_UTILITY_LLDB_S390X_REGISTER_ENUMS_H
91

source code of lldb/source/Plugins/Process/Utility/lldb-s390x-register-enums.h