Upstream tons of RISC-V changes.
[fw/openocd] / src / target / riscv / gdb_regs.h
index a587952fec866bf4f02f1c11da10e1747f822f3c..32bc1d577b8a2a281edef9053c8f457ad50dc63f 100644 (file)
@@ -1,3 +1,5 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+
 #ifndef TARGET__RISCV__GDB_REGS_H
 #define TARGET__RISCV__GDB_REGS_H
 
@@ -21,6 +23,7 @@ enum gdb_regno {
        GDB_REGNO_A3,
        GDB_REGNO_A4,
        GDB_REGNO_A5,
+       GDB_REGNO_XPR15 = GDB_REGNO_A5,
        GDB_REGNO_A6,
        GDB_REGNO_A7,
        GDB_REGNO_S2,
@@ -75,16 +78,37 @@ enum gdb_regno {
        GDB_REGNO_FT11,
        GDB_REGNO_FPR31 = GDB_REGNO_FT11,
        GDB_REGNO_CSR0 = 65,
+       GDB_REGNO_VSTART = CSR_VSTART + GDB_REGNO_CSR0,
+       GDB_REGNO_VXSAT = CSR_VXSAT + GDB_REGNO_CSR0,
+       GDB_REGNO_VXRM = CSR_VXRM + GDB_REGNO_CSR0,
+       GDB_REGNO_VLENB = CSR_VLENB + GDB_REGNO_CSR0,
+       GDB_REGNO_VL = CSR_VL + GDB_REGNO_CSR0,
+       GDB_REGNO_VTYPE = CSR_VTYPE + GDB_REGNO_CSR0,
        GDB_REGNO_TSELECT = CSR_TSELECT + GDB_REGNO_CSR0,
        GDB_REGNO_TDATA1 = CSR_TDATA1 + GDB_REGNO_CSR0,
        GDB_REGNO_TDATA2 = CSR_TDATA2 + GDB_REGNO_CSR0,
        GDB_REGNO_MISA = CSR_MISA + GDB_REGNO_CSR0,
        GDB_REGNO_DPC = CSR_DPC + GDB_REGNO_CSR0,
        GDB_REGNO_DCSR = CSR_DCSR + GDB_REGNO_CSR0,
-       GDB_REGNO_DSCRATCH = CSR_DSCRATCH + GDB_REGNO_CSR0,
+       GDB_REGNO_DSCRATCH0 = CSR_DSCRATCH0 + GDB_REGNO_CSR0,
        GDB_REGNO_MSTATUS = CSR_MSTATUS + GDB_REGNO_CSR0,
+       GDB_REGNO_MEPC = CSR_MEPC + GDB_REGNO_CSR0,
+       GDB_REGNO_MCAUSE = CSR_MCAUSE + GDB_REGNO_CSR0,
+       GDB_REGNO_SATP = CSR_SATP + GDB_REGNO_CSR0,
        GDB_REGNO_CSR4095 = GDB_REGNO_CSR0 + 4095,
        GDB_REGNO_PRIV = 4161,
+       /* It's still undecided what register numbers GDB will actually use for
+        * these. See
+        * https://groups.google.com/a/groups.riscv.org/d/msg/sw-dev/7lQYiTUN9Ms/gTxGhzaYBQAJ
+        */
+       GDB_REGNO_V0, GDB_REGNO_V1, GDB_REGNO_V2, GDB_REGNO_V3,
+       GDB_REGNO_V4, GDB_REGNO_V5, GDB_REGNO_V6, GDB_REGNO_V7,
+       GDB_REGNO_V8, GDB_REGNO_V9, GDB_REGNO_V10, GDB_REGNO_V11,
+       GDB_REGNO_V12, GDB_REGNO_V13, GDB_REGNO_V14, GDB_REGNO_V15,
+       GDB_REGNO_V16, GDB_REGNO_V17, GDB_REGNO_V18, GDB_REGNO_V19,
+       GDB_REGNO_V20, GDB_REGNO_V21, GDB_REGNO_V22, GDB_REGNO_V23,
+       GDB_REGNO_V24, GDB_REGNO_V25, GDB_REGNO_V26, GDB_REGNO_V27,
+       GDB_REGNO_V28, GDB_REGNO_V29, GDB_REGNO_V30, GDB_REGNO_V31,
        GDB_REGNO_COUNT
 };