brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.9 KiB · 8aed3d1 Raw
206 lines · c
1//===-- RISCV_DWARF_Registers.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-exception6//7//===----------------------------------------------------------------------===//8 9#ifndef LLDB_SOURCE_UTILITY_RISCV_DWARF_REGISTERS_H10#define LLDB_SOURCE_UTILITY_RISCV_DWARF_REGISTERS_H11 12#include "lldb/lldb-private.h"13 14namespace riscv_dwarf {15 16enum {17  dwarf_gpr_x0 = 0,18  dwarf_gpr_x1,19  dwarf_gpr_x2,20  dwarf_gpr_x3,21  dwarf_gpr_x4,22  dwarf_gpr_x5,23  dwarf_gpr_x6,24  dwarf_gpr_x7,25  dwarf_gpr_x8,26  dwarf_gpr_x9,27  dwarf_gpr_x10,28  dwarf_gpr_x11,29  dwarf_gpr_x12,30  dwarf_gpr_x13,31  dwarf_gpr_x14,32  dwarf_gpr_x15,33  dwarf_gpr_x16,34  dwarf_gpr_x17,35  dwarf_gpr_x18,36  dwarf_gpr_x19,37  dwarf_gpr_x20,38  dwarf_gpr_x21,39  dwarf_gpr_x22,40  dwarf_gpr_x23,41  dwarf_gpr_x24,42  dwarf_gpr_x25,43  dwarf_gpr_x26,44  dwarf_gpr_x27,45  dwarf_gpr_x28,46  dwarf_gpr_x29,47  dwarf_gpr_x30,48  dwarf_gpr_x31 = 31,49 50  dwarf_fpr_f0 = 32,51  dwarf_fpr_f1,52  dwarf_fpr_f2,53  dwarf_fpr_f3,54  dwarf_fpr_f4,55  dwarf_fpr_f5,56  dwarf_fpr_f6,57  dwarf_fpr_f7,58  dwarf_fpr_f8,59  dwarf_fpr_f9,60  dwarf_fpr_f10,61  dwarf_fpr_f11,62  dwarf_fpr_f12,63  dwarf_fpr_f13,64  dwarf_fpr_f14,65  dwarf_fpr_f15,66  dwarf_fpr_f16,67  dwarf_fpr_f17,68  dwarf_fpr_f18,69  dwarf_fpr_f19,70  dwarf_fpr_f20,71  dwarf_fpr_f21,72  dwarf_fpr_f22,73  dwarf_fpr_f23,74  dwarf_fpr_f24,75  dwarf_fpr_f25,76  dwarf_fpr_f26,77  dwarf_fpr_f27,78  dwarf_fpr_f28,79  dwarf_fpr_f29,80  dwarf_fpr_f30,81  dwarf_fpr_f31 = 63,82 83  // alternate frame return column84  dwarf_alt_fr_col = 64,85 86  dwarf_vpr_v0 = 96,87  dwarf_vpr_v1,88  dwarf_vpr_v2,89  dwarf_vpr_v3,90  dwarf_vpr_v4,91  dwarf_vpr_v5,92  dwarf_vpr_v6,93  dwarf_vpr_v7,94  dwarf_vpr_v8,95  dwarf_vpr_v9,96  dwarf_vpr_v10,97  dwarf_vpr_v11,98  dwarf_vpr_v12,99  dwarf_vpr_v13,100  dwarf_vpr_v14,101  dwarf_vpr_v15,102  dwarf_vpr_v16,103  dwarf_vpr_v17,104  dwarf_vpr_v18,105  dwarf_vpr_v19,106  dwarf_vpr_v20,107  dwarf_vpr_v21,108  dwarf_vpr_v22,109  dwarf_vpr_v23,110  dwarf_vpr_v24,111  dwarf_vpr_v25,112  dwarf_vpr_v26,113  dwarf_vpr_v27,114  dwarf_vpr_v28,115  dwarf_vpr_v29,116  dwarf_vpr_v30,117  dwarf_vpr_v31 = 127,118  dwarf_first_csr = 4096,119  dwarf_fpr_fcsr = dwarf_first_csr + 0x003,120  // The vector extension adds seven unprivileged CSRs121  // (vstart, vxsat, vxrm, vcsr, vtype, vl, vlenb)122  // to a base scalar RISC-V ISA.123  dwarf_vpr_vstart = dwarf_first_csr + 0x008,124  dwarf_vpr_vxsat = dwarf_first_csr + 0x009,125  dwarf_vpr_vxrm = dwarf_first_csr + 0x00A,126  dwarf_vpr_vcsr = dwarf_first_csr + 0x00F,127  dwarf_vpr_vl = dwarf_first_csr + 0xC20,128  dwarf_vpr_vtype = dwarf_first_csr + 0xC21,129  dwarf_vpr_vlenb = dwarf_first_csr + 0xC22,130  dwarf_last_csr = 8191,131 132  // register ABI name133  dwarf_gpr_zero = dwarf_gpr_x0,134  dwarf_gpr_ra = dwarf_gpr_x1,135  dwarf_gpr_sp = dwarf_gpr_x2,136  dwarf_gpr_gp = dwarf_gpr_x3,137  dwarf_gpr_tp = dwarf_gpr_x4,138  dwarf_gpr_t0 = dwarf_gpr_x5,139  dwarf_gpr_t1 = dwarf_gpr_x6,140  dwarf_gpr_t2 = dwarf_gpr_x7,141  dwarf_gpr_fp = dwarf_gpr_x8,142  dwarf_gpr_s1 = dwarf_gpr_x9,143  dwarf_gpr_a0 = dwarf_gpr_x10,144  dwarf_gpr_a1 = dwarf_gpr_x11,145  dwarf_gpr_a2 = dwarf_gpr_x12,146  dwarf_gpr_a3 = dwarf_gpr_x13,147  dwarf_gpr_a4 = dwarf_gpr_x14,148  dwarf_gpr_a5 = dwarf_gpr_x15,149  dwarf_gpr_a6 = dwarf_gpr_x16,150  dwarf_gpr_a7 = dwarf_gpr_x17,151  dwarf_gpr_s2 = dwarf_gpr_x18,152  dwarf_gpr_s3 = dwarf_gpr_x19,153  dwarf_gpr_s4 = dwarf_gpr_x20,154  dwarf_gpr_s5 = dwarf_gpr_x21,155  dwarf_gpr_s6 = dwarf_gpr_x22,156  dwarf_gpr_s7 = dwarf_gpr_x23,157  dwarf_gpr_s8 = dwarf_gpr_x24,158  dwarf_gpr_s9 = dwarf_gpr_x25,159  dwarf_gpr_s10 = dwarf_gpr_x26,160  dwarf_gpr_s11 = dwarf_gpr_x27,161  dwarf_gpr_t3 = dwarf_gpr_x28,162  dwarf_gpr_t4 = dwarf_gpr_x29,163  dwarf_gpr_t5 = dwarf_gpr_x30,164  dwarf_gpr_t6 = dwarf_gpr_x31,165 166  dwarf_fpr_ft0 = dwarf_fpr_f0,167  dwarf_fpr_ft1 = dwarf_fpr_f1,168  dwarf_fpr_ft2 = dwarf_fpr_f2,169  dwarf_fpr_ft3 = dwarf_fpr_f3,170  dwarf_fpr_ft4 = dwarf_fpr_f4,171  dwarf_fpr_ft5 = dwarf_fpr_f5,172  dwarf_fpr_ft6 = dwarf_fpr_f6,173  dwarf_fpr_ft7 = dwarf_fpr_f7,174  dwarf_fpr_fs0 = dwarf_fpr_f8,175  dwarf_fpr_fs1 = dwarf_fpr_f9,176  dwarf_fpr_fa0 = dwarf_fpr_f10,177  dwarf_fpr_fa1 = dwarf_fpr_f11,178  dwarf_fpr_fa2 = dwarf_fpr_f12,179  dwarf_fpr_fa3 = dwarf_fpr_f13,180  dwarf_fpr_fa4 = dwarf_fpr_f14,181  dwarf_fpr_fa5 = dwarf_fpr_f15,182  dwarf_fpr_fa6 = dwarf_fpr_f16,183  dwarf_fpr_fa7 = dwarf_fpr_f17,184  dwarf_fpr_fs2 = dwarf_fpr_f18,185  dwarf_fpr_fs3 = dwarf_fpr_f19,186  dwarf_fpr_fs4 = dwarf_fpr_f20,187  dwarf_fpr_fs5 = dwarf_fpr_f21,188  dwarf_fpr_fs6 = dwarf_fpr_f22,189  dwarf_fpr_fs7 = dwarf_fpr_f23,190  dwarf_fpr_fs8 = dwarf_fpr_f24,191  dwarf_fpr_fs9 = dwarf_fpr_f25,192  dwarf_fpr_fs10 = dwarf_fpr_f26,193  dwarf_fpr_fs11 = dwarf_fpr_f27,194  dwarf_fpr_ft8 = dwarf_fpr_f28,195  dwarf_fpr_ft9 = dwarf_fpr_f29,196  dwarf_fpr_ft10 = dwarf_fpr_f30,197  dwarf_fpr_ft11 = dwarf_fpr_f31,198 199  // mock pc regnum200  dwarf_gpr_pc = 11451,201};202 203} // namespace riscv_dwarf204 205#endif // LLDB_SOURCE_UTILITY_RISCV_DWARF_REGISTERS_H206