1 //===-- lldb-loongarch-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_LOONGARCH_REGISTER_ENUMS_H 10 #define LLDB_SOURCE_PLUGINS_PROCESS_UTILITY_LLDB_LOONGARCH_REGISTER_ENUMS_H 11 12 // LLDB register codes (e.g. RegisterKind == eRegisterKindLLDB) 13 14 // Internal codes for all loongarch registers. 15 enum { 16 // The same order as user_regs_struct in <asm/ptrace.h> 17 // note: these enum values are used as byte_offset 18 gpr_first_loongarch = 0, 19 gpr_r0_loongarch = gpr_first_loongarch, 20 gpr_r1_loongarch, 21 gpr_r2_loongarch, 22 gpr_r3_loongarch, 23 gpr_r4_loongarch, 24 gpr_r5_loongarch, 25 gpr_r6_loongarch, 26 gpr_r7_loongarch, 27 gpr_r8_loongarch, 28 gpr_r9_loongarch, 29 gpr_r10_loongarch, 30 gpr_r11_loongarch, 31 gpr_r12_loongarch, 32 gpr_r13_loongarch, 33 gpr_r14_loongarch, 34 gpr_r15_loongarch, 35 gpr_r16_loongarch, 36 gpr_r17_loongarch, 37 gpr_r18_loongarch, 38 gpr_r19_loongarch, 39 gpr_r20_loongarch, 40 gpr_r21_loongarch, 41 gpr_r22_loongarch, 42 gpr_r23_loongarch, 43 gpr_r24_loongarch, 44 gpr_r25_loongarch, 45 gpr_r26_loongarch, 46 gpr_r27_loongarch, 47 gpr_r28_loongarch, 48 gpr_r29_loongarch, 49 gpr_r30_loongarch, 50 gpr_r31_loongarch, 51 gpr_orig_a0_loongarch, 52 gpr_pc_loongarch, 53 gpr_badv_loongarch, 54 gpr_reserved0_loongarch, 55 gpr_reserved1_loongarch, 56 gpr_reserved2_loongarch, 57 gpr_reserved3_loongarch, 58 gpr_reserved4_loongarch, 59 gpr_reserved5_loongarch, 60 gpr_reserved6_loongarch, 61 gpr_reserved7_loongarch, 62 gpr_reserved8_loongarch, 63 gpr_reserved9_loongarch, 64 gpr_last_loongarch = 44, 65 66 gpr_zero_loongarch = gpr_r0_loongarch, 67 gpr_ra_loongarch = gpr_r1_loongarch, 68 gpr_tp_loongarch = gpr_r2_loongarch, 69 gpr_sp_loongarch = gpr_r3_loongarch, 70 gpr_a0_loongarch = gpr_r4_loongarch, 71 gpr_a1_loongarch = gpr_r5_loongarch, 72 gpr_a2_loongarch = gpr_r6_loongarch, 73 gpr_a3_loongarch = gpr_r7_loongarch, 74 gpr_a4_loongarch = gpr_r8_loongarch, 75 gpr_a5_loongarch = gpr_r9_loongarch, 76 gpr_a6_loongarch = gpr_r10_loongarch, 77 gpr_a7_loongarch = gpr_r11_loongarch, 78 gpr_t0_loongarch = gpr_r12_loongarch, 79 gpr_t1_loongarch = gpr_r13_loongarch, 80 gpr_t2_loongarch = gpr_r14_loongarch, 81 gpr_t3_loongarch = gpr_r15_loongarch, 82 gpr_t4_loongarch = gpr_r16_loongarch, 83 gpr_t5_loongarch = gpr_r17_loongarch, 84 gpr_t6_loongarch = gpr_r18_loongarch, 85 gpr_t7_loongarch = gpr_r19_loongarch, 86 gpr_t8_loongarch = gpr_r20_loongarch, 87 gpr_fp_loongarch = gpr_r22_loongarch, 88 gpr_s0_loongarch = gpr_r23_loongarch, 89 gpr_s1_loongarch = gpr_r24_loongarch, 90 gpr_s2_loongarch = gpr_r25_loongarch, 91 gpr_s3_loongarch = gpr_r26_loongarch, 92 gpr_s4_loongarch = gpr_r27_loongarch, 93 gpr_s5_loongarch = gpr_r28_loongarch, 94 gpr_s6_loongarch = gpr_r29_loongarch, 95 gpr_s7_loongarch = gpr_r30_loongarch, 96 gpr_s8_loongarch = gpr_r31_loongarch, 97 98 fpr_first_loongarch = 45, 99 fpr_f0_loongarch = fpr_first_loongarch, 100 fpr_f1_loongarch, 101 fpr_f2_loongarch, 102 fpr_f3_loongarch, 103 fpr_f4_loongarch, 104 fpr_f5_loongarch, 105 fpr_f6_loongarch, 106 fpr_f7_loongarch, 107 fpr_f8_loongarch, 108 fpr_f9_loongarch, 109 fpr_f10_loongarch, 110 fpr_f11_loongarch, 111 fpr_f12_loongarch, 112 fpr_f13_loongarch, 113 fpr_f14_loongarch, 114 fpr_f15_loongarch, 115 fpr_f16_loongarch, 116 fpr_f17_loongarch, 117 fpr_f18_loongarch, 118 fpr_f19_loongarch, 119 fpr_f20_loongarch, 120 fpr_f21_loongarch, 121 fpr_f22_loongarch, 122 fpr_f23_loongarch, 123 fpr_f24_loongarch, 124 fpr_f25_loongarch, 125 fpr_f26_loongarch, 126 fpr_f27_loongarch, 127 fpr_f28_loongarch, 128 fpr_f29_loongarch, 129 fpr_f30_loongarch, 130 fpr_f31_loongarch, 131 fpr_fcc0_loongarch, 132 fpr_fcc1_loongarch, 133 fpr_fcc2_loongarch, 134 fpr_fcc3_loongarch, 135 fpr_fcc4_loongarch, 136 fpr_fcc5_loongarch, 137 fpr_fcc6_loongarch, 138 fpr_fcc7_loongarch, 139 fpr_fcsr_loongarch, 140 fpr_last_loongarch = fpr_fcsr_loongarch, 141 142 fpr_fa0_loongarch = fpr_f0_loongarch, 143 fpr_fa1_loongarch = fpr_f1_loongarch, 144 fpr_fa2_loongarch = fpr_f2_loongarch, 145 fpr_fa3_loongarch = fpr_f3_loongarch, 146 fpr_fa4_loongarch = fpr_f4_loongarch, 147 fpr_fa5_loongarch = fpr_f5_loongarch, 148 fpr_fa6_loongarch = fpr_f6_loongarch, 149 fpr_fa7_loongarch = fpr_f7_loongarch, 150 fpr_ft0_loongarch = fpr_f8_loongarch, 151 fpr_ft1_loongarch = fpr_f9_loongarch, 152 fpr_ft2_loongarch = fpr_f10_loongarch, 153 fpr_ft3_loongarch = fpr_f11_loongarch, 154 fpr_ft4_loongarch = fpr_f12_loongarch, 155 fpr_ft5_loongarch = fpr_f13_loongarch, 156 fpr_ft6_loongarch = fpr_f14_loongarch, 157 fpr_ft7_loongarch = fpr_f15_loongarch, 158 fpr_ft8_loongarch = fpr_f16_loongarch, 159 fpr_ft9_loongarch = fpr_f17_loongarch, 160 fpr_ft10_loongarch = fpr_f18_loongarch, 161 fpr_ft11_loongarch = fpr_f19_loongarch, 162 fpr_ft12_loongarch = fpr_f20_loongarch, 163 fpr_ft13_loongarch = fpr_f21_loongarch, 164 fpr_ft14_loongarch = fpr_f22_loongarch, 165 fpr_ft15_loongarch = fpr_f23_loongarch, 166 fpr_fs0_loongarch = fpr_f24_loongarch, 167 fpr_fs1_loongarch = fpr_f25_loongarch, 168 fpr_fs2_loongarch = fpr_f26_loongarch, 169 fpr_fs3_loongarch = fpr_f27_loongarch, 170 fpr_fs4_loongarch = fpr_f28_loongarch, 171 fpr_fs5_loongarch = fpr_f29_loongarch, 172 fpr_fs6_loongarch = fpr_f30_loongarch, 173 fpr_fs7_loongarch = fpr_f31_loongarch, 174 175 k_num_registers_loongarch 176 }; 177 178 #endif // LLDB_SOURCE_PLUGINS_PROCESS_UTILITY_LLDB_LOONGARCH_REGISTER_ENUMS_H 179