1*bdd1243dSDimitry Andric //===-- LoongArch_DWARF_Registers.h -----------------------------*- C++ -*-===// 2*bdd1243dSDimitry Andric // 3*bdd1243dSDimitry Andric // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4*bdd1243dSDimitry Andric // See https://llvm.org/LICENSE.txt for license information. 5*bdd1243dSDimitry Andric // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6*bdd1243dSDimitry Andric // 7*bdd1243dSDimitry Andric //===----------------------------------------------------------------------===// 8*bdd1243dSDimitry Andric 9*bdd1243dSDimitry Andric #ifndef LLDB_SOURCE_UTILITY_LOONGARCH_DWARF_REGISTERS_H 10*bdd1243dSDimitry Andric #define LLDB_SOURCE_UTILITY_LOONGARCH_DWARF_REGISTERS_H 11*bdd1243dSDimitry Andric 12*bdd1243dSDimitry Andric #include "lldb/lldb-private.h" 13*bdd1243dSDimitry Andric 14*bdd1243dSDimitry Andric namespace loongarch_dwarf { 15*bdd1243dSDimitry Andric 16*bdd1243dSDimitry Andric enum { 17*bdd1243dSDimitry Andric dwarf_gpr_r0 = 0, 18*bdd1243dSDimitry Andric dwarf_gpr_r1, 19*bdd1243dSDimitry Andric dwarf_gpr_r2, 20*bdd1243dSDimitry Andric dwarf_gpr_r3, 21*bdd1243dSDimitry Andric dwarf_gpr_r4, 22*bdd1243dSDimitry Andric dwarf_gpr_r5, 23*bdd1243dSDimitry Andric dwarf_gpr_r6, 24*bdd1243dSDimitry Andric dwarf_gpr_r7, 25*bdd1243dSDimitry Andric dwarf_gpr_r8, 26*bdd1243dSDimitry Andric dwarf_gpr_r9, 27*bdd1243dSDimitry Andric dwarf_gpr_r10, 28*bdd1243dSDimitry Andric dwarf_gpr_r11, 29*bdd1243dSDimitry Andric dwarf_gpr_r12, 30*bdd1243dSDimitry Andric dwarf_gpr_r13, 31*bdd1243dSDimitry Andric dwarf_gpr_r14, 32*bdd1243dSDimitry Andric dwarf_gpr_r15, 33*bdd1243dSDimitry Andric dwarf_gpr_r16, 34*bdd1243dSDimitry Andric dwarf_gpr_r17, 35*bdd1243dSDimitry Andric dwarf_gpr_r18, 36*bdd1243dSDimitry Andric dwarf_gpr_r19, 37*bdd1243dSDimitry Andric dwarf_gpr_r20, 38*bdd1243dSDimitry Andric dwarf_gpr_r21, 39*bdd1243dSDimitry Andric dwarf_gpr_r22, 40*bdd1243dSDimitry Andric dwarf_gpr_r23, 41*bdd1243dSDimitry Andric dwarf_gpr_r24, 42*bdd1243dSDimitry Andric dwarf_gpr_r25, 43*bdd1243dSDimitry Andric dwarf_gpr_r26, 44*bdd1243dSDimitry Andric dwarf_gpr_r27, 45*bdd1243dSDimitry Andric dwarf_gpr_r28, 46*bdd1243dSDimitry Andric dwarf_gpr_r29, 47*bdd1243dSDimitry Andric dwarf_gpr_r30, 48*bdd1243dSDimitry Andric dwarf_gpr_r31 = 31, 49*bdd1243dSDimitry Andric 50*bdd1243dSDimitry Andric dwarf_gpr_orig_a0, 51*bdd1243dSDimitry Andric dwarf_gpr_pc, 52*bdd1243dSDimitry Andric dwarf_gpr_badv, 53*bdd1243dSDimitry Andric 54*bdd1243dSDimitry Andric dwarf_gpr_reserved0 = 35, 55*bdd1243dSDimitry Andric dwarf_gpr_reserved1, 56*bdd1243dSDimitry Andric dwarf_gpr_reserved2, 57*bdd1243dSDimitry Andric dwarf_gpr_reserved3, 58*bdd1243dSDimitry Andric dwarf_gpr_reserved4, 59*bdd1243dSDimitry Andric dwarf_gpr_reserved5, 60*bdd1243dSDimitry Andric dwarf_gpr_reserved6, 61*bdd1243dSDimitry Andric dwarf_gpr_reserved7, 62*bdd1243dSDimitry Andric dwarf_gpr_reserved8, 63*bdd1243dSDimitry Andric dwarf_gpr_reserved9, 64*bdd1243dSDimitry Andric 65*bdd1243dSDimitry Andric dwarf_fpr_f0 = 45, 66*bdd1243dSDimitry Andric dwarf_fpr_f1, 67*bdd1243dSDimitry Andric dwarf_fpr_f2, 68*bdd1243dSDimitry Andric dwarf_fpr_f3, 69*bdd1243dSDimitry Andric dwarf_fpr_f4, 70*bdd1243dSDimitry Andric dwarf_fpr_f5, 71*bdd1243dSDimitry Andric dwarf_fpr_f6, 72*bdd1243dSDimitry Andric dwarf_fpr_f7, 73*bdd1243dSDimitry Andric dwarf_fpr_f8, 74*bdd1243dSDimitry Andric dwarf_fpr_f9, 75*bdd1243dSDimitry Andric dwarf_fpr_f10, 76*bdd1243dSDimitry Andric dwarf_fpr_f11, 77*bdd1243dSDimitry Andric dwarf_fpr_f12, 78*bdd1243dSDimitry Andric dwarf_fpr_f13, 79*bdd1243dSDimitry Andric dwarf_fpr_f14, 80*bdd1243dSDimitry Andric dwarf_fpr_f15, 81*bdd1243dSDimitry Andric dwarf_fpr_f16, 82*bdd1243dSDimitry Andric dwarf_fpr_f17, 83*bdd1243dSDimitry Andric dwarf_fpr_f18, 84*bdd1243dSDimitry Andric dwarf_fpr_f19, 85*bdd1243dSDimitry Andric dwarf_fpr_f20, 86*bdd1243dSDimitry Andric dwarf_fpr_f21, 87*bdd1243dSDimitry Andric dwarf_fpr_f22, 88*bdd1243dSDimitry Andric dwarf_fpr_f23, 89*bdd1243dSDimitry Andric dwarf_fpr_f24, 90*bdd1243dSDimitry Andric dwarf_fpr_f25, 91*bdd1243dSDimitry Andric dwarf_fpr_f26, 92*bdd1243dSDimitry Andric dwarf_fpr_f27, 93*bdd1243dSDimitry Andric dwarf_fpr_f28, 94*bdd1243dSDimitry Andric dwarf_fpr_f29, 95*bdd1243dSDimitry Andric dwarf_fpr_f30, 96*bdd1243dSDimitry Andric dwarf_fpr_f31 = 76, 97*bdd1243dSDimitry Andric 98*bdd1243dSDimitry Andric dwarf_fpr_fcc0, 99*bdd1243dSDimitry Andric dwarf_fpr_fcc1, 100*bdd1243dSDimitry Andric dwarf_fpr_fcc2, 101*bdd1243dSDimitry Andric dwarf_fpr_fcc3, 102*bdd1243dSDimitry Andric dwarf_fpr_fcc4, 103*bdd1243dSDimitry Andric dwarf_fpr_fcc5, 104*bdd1243dSDimitry Andric dwarf_fpr_fcc6, 105*bdd1243dSDimitry Andric dwarf_fpr_fcc7, 106*bdd1243dSDimitry Andric dwarf_fpr_fcsr, 107*bdd1243dSDimitry Andric 108*bdd1243dSDimitry Andric // register name alias 109*bdd1243dSDimitry Andric dwarf_gpr_zero = dwarf_gpr_r0, 110*bdd1243dSDimitry Andric dwarf_gpr_ra = dwarf_gpr_r1, 111*bdd1243dSDimitry Andric dwarf_gpr_tp = dwarf_gpr_r2, 112*bdd1243dSDimitry Andric dwarf_gpr_sp = dwarf_gpr_r3, 113*bdd1243dSDimitry Andric dwarf_gpr_a0 = dwarf_gpr_r4, 114*bdd1243dSDimitry Andric dwarf_gpr_a1 = dwarf_gpr_r5, 115*bdd1243dSDimitry Andric dwarf_gpr_a2 = dwarf_gpr_r6, 116*bdd1243dSDimitry Andric dwarf_gpr_a3 = dwarf_gpr_r7, 117*bdd1243dSDimitry Andric dwarf_gpr_a4 = dwarf_gpr_r8, 118*bdd1243dSDimitry Andric dwarf_gpr_a5 = dwarf_gpr_r9, 119*bdd1243dSDimitry Andric dwarf_gpr_a6 = dwarf_gpr_r10, 120*bdd1243dSDimitry Andric dwarf_gpr_a7 = dwarf_gpr_r11, 121*bdd1243dSDimitry Andric dwarf_gpr_t0 = dwarf_gpr_r12, 122*bdd1243dSDimitry Andric dwarf_gpr_t1 = dwarf_gpr_r13, 123*bdd1243dSDimitry Andric dwarf_gpr_t2 = dwarf_gpr_r14, 124*bdd1243dSDimitry Andric dwarf_gpr_t3 = dwarf_gpr_r15, 125*bdd1243dSDimitry Andric dwarf_gpr_t4 = dwarf_gpr_r16, 126*bdd1243dSDimitry Andric dwarf_gpr_t5 = dwarf_gpr_r17, 127*bdd1243dSDimitry Andric dwarf_gpr_t6 = dwarf_gpr_r18, 128*bdd1243dSDimitry Andric dwarf_gpr_t7 = dwarf_gpr_r19, 129*bdd1243dSDimitry Andric dwarf_gpr_t8 = dwarf_gpr_r20, 130*bdd1243dSDimitry Andric dwarf_gpr_fp = dwarf_gpr_r22, 131*bdd1243dSDimitry Andric dwarf_gpr_s0 = dwarf_gpr_r23, 132*bdd1243dSDimitry Andric dwarf_gpr_s1 = dwarf_gpr_r24, 133*bdd1243dSDimitry Andric dwarf_gpr_s2 = dwarf_gpr_r25, 134*bdd1243dSDimitry Andric dwarf_gpr_s3 = dwarf_gpr_r26, 135*bdd1243dSDimitry Andric dwarf_gpr_s4 = dwarf_gpr_r27, 136*bdd1243dSDimitry Andric dwarf_gpr_s5 = dwarf_gpr_r28, 137*bdd1243dSDimitry Andric dwarf_gpr_s6 = dwarf_gpr_r29, 138*bdd1243dSDimitry Andric dwarf_gpr_s7 = dwarf_gpr_r30, 139*bdd1243dSDimitry Andric dwarf_gpr_s8 = dwarf_gpr_r31, 140*bdd1243dSDimitry Andric 141*bdd1243dSDimitry Andric dwarf_fpr_fa0 = dwarf_fpr_f0, 142*bdd1243dSDimitry Andric dwarf_fpr_fa1 = dwarf_fpr_f1, 143*bdd1243dSDimitry Andric dwarf_fpr_fa2 = dwarf_fpr_f2, 144*bdd1243dSDimitry Andric dwarf_fpr_fa3 = dwarf_fpr_f3, 145*bdd1243dSDimitry Andric dwarf_fpr_fa4 = dwarf_fpr_f4, 146*bdd1243dSDimitry Andric dwarf_fpr_fa5 = dwarf_fpr_f5, 147*bdd1243dSDimitry Andric dwarf_fpr_fa6 = dwarf_fpr_f6, 148*bdd1243dSDimitry Andric dwarf_fpr_fa7 = dwarf_fpr_f7, 149*bdd1243dSDimitry Andric dwarf_fpr_ft0 = dwarf_fpr_f8, 150*bdd1243dSDimitry Andric dwarf_fpr_ft1 = dwarf_fpr_f9, 151*bdd1243dSDimitry Andric dwarf_fpr_ft2 = dwarf_fpr_f10, 152*bdd1243dSDimitry Andric dwarf_fpr_ft3 = dwarf_fpr_f11, 153*bdd1243dSDimitry Andric dwarf_fpr_ft4 = dwarf_fpr_f12, 154*bdd1243dSDimitry Andric dwarf_fpr_ft5 = dwarf_fpr_f13, 155*bdd1243dSDimitry Andric dwarf_fpr_ft6 = dwarf_fpr_f14, 156*bdd1243dSDimitry Andric dwarf_fpr_ft7 = dwarf_fpr_f15, 157*bdd1243dSDimitry Andric dwarf_fpr_ft8 = dwarf_fpr_f16, 158*bdd1243dSDimitry Andric dwarf_fpr_ft9 = dwarf_fpr_f17, 159*bdd1243dSDimitry Andric dwarf_fpr_ft10 = dwarf_fpr_f18, 160*bdd1243dSDimitry Andric dwarf_fpr_ft11 = dwarf_fpr_f19, 161*bdd1243dSDimitry Andric dwarf_fpr_ft12 = dwarf_fpr_f20, 162*bdd1243dSDimitry Andric dwarf_fpr_ft13 = dwarf_fpr_f21, 163*bdd1243dSDimitry Andric dwarf_fpr_ft14 = dwarf_fpr_f22, 164*bdd1243dSDimitry Andric dwarf_fpr_ft15 = dwarf_fpr_f23, 165*bdd1243dSDimitry Andric dwarf_fpr_fs0 = dwarf_fpr_f24, 166*bdd1243dSDimitry Andric dwarf_fpr_fs1 = dwarf_fpr_f25, 167*bdd1243dSDimitry Andric dwarf_fpr_fs2 = dwarf_fpr_f26, 168*bdd1243dSDimitry Andric dwarf_fpr_fs3 = dwarf_fpr_f27, 169*bdd1243dSDimitry Andric dwarf_fpr_fs4 = dwarf_fpr_f28, 170*bdd1243dSDimitry Andric dwarf_fpr_fs5 = dwarf_fpr_f29, 171*bdd1243dSDimitry Andric dwarf_fpr_fs6 = dwarf_fpr_f30, 172*bdd1243dSDimitry Andric dwarf_fpr_fs7 = dwarf_fpr_f31, 173*bdd1243dSDimitry Andric }; 174*bdd1243dSDimitry Andric 175*bdd1243dSDimitry Andric } // namespace loongarch_dwarf 176*bdd1243dSDimitry Andric 177*bdd1243dSDimitry Andric #endif // LLDB_SOURCE_UTILITY_LOONGARCH_DWARF_REGISTERS_H 178