aboutsummaryrefslogtreecommitdiff
path: root/riscv/encoding.h
diff options
context:
space:
mode:
authorAndrew Waterman <andrew@sifive.com>2022-01-19 21:20:27 -0800
committerAndrew Waterman <andrew@sifive.com>2022-01-19 21:20:27 -0800
commit3482790b260ed34db9a19f3bd18a3f93b6573342 (patch)
treee72a9109ccfbc41861e8c1e079d9096aca935eb4 /riscv/encoding.h
parente93b9cbbbcd3ad0a02ae298e9f1a2d98d3ac0153 (diff)
downloadspike-3482790b260ed34db9a19f3bd18a3f93b6573342.zip
spike-3482790b260ed34db9a19f3bd18a3f93b6573342.tar.gz
spike-3482790b260ed34db9a19f3bd18a3f93b6573342.tar.bz2
Fix HINVAL.VVMA and HINVAL.GVMA opcodes
The opcodes were incorrect in riscv-opcodes; now they match the spec.
Diffstat (limited to 'riscv/encoding.h')
-rw-r--r--riscv/encoding.h231
1 files changed, 204 insertions, 27 deletions
diff --git a/riscv/encoding.h b/riscv/encoding.h
index 1f2cc52..916edea 100644
--- a/riscv/encoding.h
+++ b/riscv/encoding.h
@@ -1,6 +1,6 @@
/*
- * This file is auto-generated by running 'make ../riscv-isa-sim/riscv/encoding.h' in
- * https://github.com/riscv/riscv-opcodes (ce0bd39)
+ * This file is auto-generated by running 'make' in
+ * https://github.com/riscv/riscv-opcodes (d2b9aea)
*/
/* See LICENSE for license details. */
@@ -149,6 +149,37 @@
#define SIP_SSIP MIP_SSIP
#define SIP_STIP MIP_STIP
+#define MENVCFG_FIOM 0x00000001
+#define MENVCFG_CBIE 0x00000030
+#define MENVCFG_CBCFE 0x00000040
+#define MENVCFG_CBZE 0x00000080
+#define MENVCFG_PBMTE 0x4000000000000000
+#define MENVCFG_STCE 0x8000000000000000
+
+#define MENVCFGH_PBMTE 0x40000000
+#define MENVCFGH_STCE 0x80000000
+
+#define HENVCFG_FIOM 0x00000001
+#define HENVCFG_CBIE 0x00000030
+#define HENVCFG_CBCFE 0x00000040
+#define HENVCFG_CBZE 0x00000080
+#define HENVCFG_PBMTE 0x4000000000000000
+#define HENVCFG_STCE 0x8000000000000000
+
+#define HENVCFGH_PBMTE 0x40000000
+#define HENVCFGH_STCE 0x80000000
+
+#define SENVCFG_FIOM 0x00000001
+#define SENVCFG_CBIE 0x00000030
+#define SENVCFG_CBCFE 0x00000040
+#define SENVCFG_CBZE 0x00000080
+
+#define MSECCFG_MML 0x00000001
+#define MSECCFG_MMWP 0x00000002
+#define MSECCFG_RLB 0x00000004
+#define MSECCFG_USEED 0x00000100
+#define MSECCFG_SSEED 0x00000200
+
#define PRV_U 0
#define PRV_S 1
#define PRV_M 3
@@ -861,14 +892,6 @@
#define MASK_ROLW 0xfe00707f
#define MATCH_RORW 0x6000503b
#define MASK_RORW 0xfe00707f
-#define MATCH_SBCLRW 0x4800103b
-#define MASK_SBCLRW 0xfe00707f
-#define MATCH_SBSETW 0x2800103b
-#define MASK_SBSETW 0xfe00707f
-#define MATCH_SBINVW 0x6800103b
-#define MASK_SBINVW 0xfe00707f
-#define MATCH_SBEXTW 0x4800503b
-#define MASK_SBEXTW 0xfe00707f
#define MATCH_GORCW 0x2800503b
#define MASK_GORCW 0xfe00707f
#define MATCH_GREVW 0x6800503b
@@ -879,12 +902,6 @@
#define MASK_SROIW 0xfe00707f
#define MATCH_RORIW 0x6000501b
#define MASK_RORIW 0xfe00707f
-#define MATCH_SBCLRIW 0x4800101b
-#define MASK_SBCLRIW 0xfe00707f
-#define MATCH_SBSETIW 0x2800101b
-#define MASK_SBSETIW 0xfe00707f
-#define MATCH_SBINVIW 0x6800101b
-#define MASK_SBINVIW 0xfe00707f
#define MATCH_GORCIW 0x2800501b
#define MASK_GORCIW 0xfe00707f
#define MATCH_GREVIW 0x6800501b
@@ -955,9 +972,9 @@
#define MASK_SFENCE_W_INVAL 0xffffffff
#define MATCH_SFENCE_INVAL_IR 0x18100073
#define MASK_SFENCE_INVAL_IR 0xffffffff
-#define MATCH_HINVAL_VVMA 0x36000073
+#define MATCH_HINVAL_VVMA 0x26000073
#define MASK_HINVAL_VVMA 0xfe007fff
-#define MATCH_HINVAL_GVMA 0x76000073
+#define MATCH_HINVAL_GVMA 0x66000073
#define MASK_HINVAL_GVMA 0xfe007fff
#define MATCH_FADD_H 0x4000053
#define MASK_FADD_H 0xfe00007f
@@ -1089,6 +1106,20 @@
#define MASK_SHA512SIG0 0xfff0707f
#define MATCH_SHA512SIG1 0x10701013
#define MASK_SHA512SIG1 0xfff0707f
+#define MATCH_CBO_CLEAN 0x10200f
+#define MASK_CBO_CLEAN 0xfff07fff
+#define MATCH_CBO_FLUSH 0x20200f
+#define MASK_CBO_FLUSH 0xfff07fff
+#define MATCH_CBO_INVAL 0x200f
+#define MASK_CBO_INVAL 0xfff07fff
+#define MATCH_CBO_ZERO 0x40200f
+#define MASK_CBO_ZERO 0xfff07fff
+#define MATCH_PREFETCH_I 0x6013
+#define MASK_PREFETCH_I 0x1f07fff
+#define MATCH_PREFETCH_R 0x106013
+#define MASK_PREFETCH_R 0x1f07fff
+#define MATCH_PREFETCH_W 0x306013
+#define MASK_PREFETCH_W 0x1f07fff
#define MATCH_C_NOP 0x1
#define MASK_C_NOP 0xffff
#define MATCH_C_ADDI16SP 0x6101
@@ -2793,6 +2824,10 @@
#define MASK_VFWREDSUM_VS 0xfc00707f
#define MATCH_VPOPC_M 0x40082057
#define MASK_VPOPC_M 0xfc0ff07f
+#define MATCH_VMORNOT_MM 0x70002057
+#define MASK_VMORNOT_MM 0xfc00707f
+#define MATCH_VMANDNOT_MM 0x60002057
+#define MASK_VMANDNOT_MM 0xfc00707f
#define CSR_FFLAGS 0x1
#define CSR_FRM 0x2
#define CSR_FCSR 0x3
@@ -2842,12 +2877,14 @@
#define CSR_SIE 0x104
#define CSR_STVEC 0x105
#define CSR_SCOUNTEREN 0x106
+#define CSR_SENVCFG 0x10a
#define CSR_SSCRATCH 0x140
#define CSR_SEPC 0x141
#define CSR_SCAUSE 0x142
#define CSR_STVAL 0x143
#define CSR_SIP 0x144
#define CSR_SATP 0x180
+#define CSR_SCONTEXT 0x5a8
#define CSR_VSSTATUS 0x200
#define CSR_VSIE 0x204
#define CSR_VSTVEC 0x205
@@ -2864,11 +2901,13 @@
#define CSR_HTIMEDELTA 0x605
#define CSR_HCOUNTEREN 0x606
#define CSR_HGEIE 0x607
+#define CSR_HENVCFG 0x60a
#define CSR_HTVAL 0x643
#define CSR_HIP 0x644
#define CSR_HVIP 0x645
#define CSR_HTINST 0x64a
#define CSR_HGATP 0x680
+#define CSR_HCONTEXT 0x6a8
#define CSR_HGEIP 0xe12
#define CSR_UTVT 0x7
#define CSR_UNXTI 0x45
@@ -2892,6 +2931,7 @@
#define CSR_MIE 0x304
#define CSR_MTVEC 0x305
#define CSR_MCOUNTEREN 0x306
+#define CSR_MENVCFG 0x30a
#define CSR_MCOUNTINHIBIT 0x320
#define CSR_MSCRATCH 0x340
#define CSR_MEPC 0x341
@@ -2904,6 +2944,18 @@
#define CSR_PMPCFG1 0x3a1
#define CSR_PMPCFG2 0x3a2
#define CSR_PMPCFG3 0x3a3
+#define CSR_PMPCFG4 0x3a4
+#define CSR_PMPCFG5 0x3a5
+#define CSR_PMPCFG6 0x3a6
+#define CSR_PMPCFG7 0x3a7
+#define CSR_PMPCFG8 0x3a8
+#define CSR_PMPCFG9 0x3a9
+#define CSR_PMPCFG10 0x3aa
+#define CSR_PMPCFG11 0x3ab
+#define CSR_PMPCFG12 0x3ac
+#define CSR_PMPCFG13 0x3ad
+#define CSR_PMPCFG14 0x3ae
+#define CSR_PMPCFG15 0x3af
#define CSR_PMPADDR0 0x3b0
#define CSR_PMPADDR1 0x3b1
#define CSR_PMPADDR2 0x3b2
@@ -2920,6 +2972,55 @@
#define CSR_PMPADDR13 0x3bd
#define CSR_PMPADDR14 0x3be
#define CSR_PMPADDR15 0x3bf
+#define CSR_PMPADDR16 0x3c0
+#define CSR_PMPADDR17 0x3c1
+#define CSR_PMPADDR18 0x3c2
+#define CSR_PMPADDR19 0x3c3
+#define CSR_PMPADDR20 0x3c4
+#define CSR_PMPADDR21 0x3c5
+#define CSR_PMPADDR22 0x3c6
+#define CSR_PMPADDR23 0x3c7
+#define CSR_PMPADDR24 0x3c8
+#define CSR_PMPADDR25 0x3c9
+#define CSR_PMPADDR26 0x3ca
+#define CSR_PMPADDR27 0x3cb
+#define CSR_PMPADDR28 0x3cc
+#define CSR_PMPADDR29 0x3cd
+#define CSR_PMPADDR30 0x3ce
+#define CSR_PMPADDR31 0x3cf
+#define CSR_PMPADDR32 0x3d0
+#define CSR_PMPADDR33 0x3d1
+#define CSR_PMPADDR34 0x3d2
+#define CSR_PMPADDR35 0x3d3
+#define CSR_PMPADDR36 0x3d4
+#define CSR_PMPADDR37 0x3d5
+#define CSR_PMPADDR38 0x3d6
+#define CSR_PMPADDR39 0x3d7
+#define CSR_PMPADDR40 0x3d8
+#define CSR_PMPADDR41 0x3d9
+#define CSR_PMPADDR42 0x3da
+#define CSR_PMPADDR43 0x3db
+#define CSR_PMPADDR44 0x3dc
+#define CSR_PMPADDR45 0x3dd
+#define CSR_PMPADDR46 0x3de
+#define CSR_PMPADDR47 0x3df
+#define CSR_PMPADDR48 0x3e0
+#define CSR_PMPADDR49 0x3e1
+#define CSR_PMPADDR50 0x3e2
+#define CSR_PMPADDR51 0x3e3
+#define CSR_PMPADDR52 0x3e4
+#define CSR_PMPADDR53 0x3e5
+#define CSR_PMPADDR54 0x3e6
+#define CSR_PMPADDR55 0x3e7
+#define CSR_PMPADDR56 0x3e8
+#define CSR_PMPADDR57 0x3e9
+#define CSR_PMPADDR58 0x3ea
+#define CSR_PMPADDR59 0x3eb
+#define CSR_PMPADDR60 0x3ec
+#define CSR_PMPADDR61 0x3ed
+#define CSR_PMPADDR62 0x3ee
+#define CSR_PMPADDR63 0x3ef
+#define CSR_MSECCFG 0x747
#define CSR_TSELECT 0x7a0
#define CSR_TDATA1 0x7a1
#define CSR_TDATA2 0x7a2
@@ -2927,7 +3028,7 @@
#define CSR_TINFO 0x7a4
#define CSR_TCONTROL 0x7a5
#define CSR_MCONTEXT 0x7a8
-#define CSR_SCONTEXT 0x7aa
+#define CSR_MSCONTEXT 0x7aa
#define CSR_DCSR 0x7b0
#define CSR_DPC 0x7b1
#define CSR_DSCRATCH0 0x7b2
@@ -2996,7 +3097,9 @@
#define CSR_MARCHID 0xf12
#define CSR_MIMPID 0xf13
#define CSR_MHARTID 0xf14
+#define CSR_MCONFIGPTR 0xf15
#define CSR_HTIMEDELTAH 0x615
+#define CSR_HENVCFGH 0x61a
#define CSR_CYCLEH 0xc80
#define CSR_TIMEH 0xc81
#define CSR_INSTRETH 0xc82
@@ -3030,6 +3133,8 @@
#define CSR_HPMCOUNTER30H 0xc9e
#define CSR_HPMCOUNTER31H 0xc9f
#define CSR_MSTATUSH 0x310
+#define CSR_MENVCFGH 0x31a
+#define CSR_MSECCFGH 0x757
#define CSR_MCYCLEH 0xb80
#define CSR_MINSTRETH 0xb82
#define CSR_MHPMCOUNTER3H 0xb83
@@ -3372,18 +3477,11 @@ DECLARE_INSN(slow, MATCH_SLOW, MASK_SLOW)
DECLARE_INSN(srow, MATCH_SROW, MASK_SROW)
DECLARE_INSN(rolw, MATCH_ROLW, MASK_ROLW)
DECLARE_INSN(rorw, MATCH_RORW, MASK_RORW)
-DECLARE_INSN(sbclrw, MATCH_SBCLRW, MASK_SBCLRW)
-DECLARE_INSN(sbsetw, MATCH_SBSETW, MASK_SBSETW)
-DECLARE_INSN(sbinvw, MATCH_SBINVW, MASK_SBINVW)
-DECLARE_INSN(sbextw, MATCH_SBEXTW, MASK_SBEXTW)
DECLARE_INSN(gorcw, MATCH_GORCW, MASK_GORCW)
DECLARE_INSN(grevw, MATCH_GREVW, MASK_GREVW)
DECLARE_INSN(sloiw, MATCH_SLOIW, MASK_SLOIW)
DECLARE_INSN(sroiw, MATCH_SROIW, MASK_SROIW)
DECLARE_INSN(roriw, MATCH_RORIW, MASK_RORIW)
-DECLARE_INSN(sbclriw, MATCH_SBCLRIW, MASK_SBCLRIW)
-DECLARE_INSN(sbsetiw, MATCH_SBSETIW, MASK_SBSETIW)
-DECLARE_INSN(sbinviw, MATCH_SBINVIW, MASK_SBINVIW)
DECLARE_INSN(gorciw, MATCH_GORCIW, MASK_GORCIW)
DECLARE_INSN(greviw, MATCH_GREVIW, MASK_GREVIW)
DECLARE_INSN(fslw, MATCH_FSLW, MASK_FSLW)
@@ -3486,6 +3584,13 @@ DECLARE_INSN(sha512sum0, MATCH_SHA512SUM0, MASK_SHA512SUM0)
DECLARE_INSN(sha512sum1, MATCH_SHA512SUM1, MASK_SHA512SUM1)
DECLARE_INSN(sha512sig0, MATCH_SHA512SIG0, MASK_SHA512SIG0)
DECLARE_INSN(sha512sig1, MATCH_SHA512SIG1, MASK_SHA512SIG1)
+DECLARE_INSN(cbo_clean, MATCH_CBO_CLEAN, MASK_CBO_CLEAN)
+DECLARE_INSN(cbo_flush, MATCH_CBO_FLUSH, MASK_CBO_FLUSH)
+DECLARE_INSN(cbo_inval, MATCH_CBO_INVAL, MASK_CBO_INVAL)
+DECLARE_INSN(cbo_zero, MATCH_CBO_ZERO, MASK_CBO_ZERO)
+DECLARE_INSN(prefetch_i, MATCH_PREFETCH_I, MASK_PREFETCH_I)
+DECLARE_INSN(prefetch_r, MATCH_PREFETCH_R, MASK_PREFETCH_R)
+DECLARE_INSN(prefetch_w, MATCH_PREFETCH_W, MASK_PREFETCH_W)
DECLARE_INSN(c_nop, MATCH_C_NOP, MASK_C_NOP)
DECLARE_INSN(c_addi16sp, MATCH_C_ADDI16SP, MASK_C_ADDI16SP)
DECLARE_INSN(c_jr, MATCH_C_JR, MASK_C_JR)
@@ -4338,6 +4443,8 @@ DECLARE_INSN(vse1_v, MATCH_VSE1_V, MASK_VSE1_V)
DECLARE_INSN(vfredsum_vs, MATCH_VFREDSUM_VS, MASK_VFREDSUM_VS)
DECLARE_INSN(vfwredsum_vs, MATCH_VFWREDSUM_VS, MASK_VFWREDSUM_VS)
DECLARE_INSN(vpopc_m, MATCH_VPOPC_M, MASK_VPOPC_M)
+DECLARE_INSN(vmornot_mm, MATCH_VMORNOT_MM, MASK_VMORNOT_MM)
+DECLARE_INSN(vmandnot_mm, MATCH_VMANDNOT_MM, MASK_VMANDNOT_MM)
#endif
#ifdef DECLARE_CSR
DECLARE_CSR(fflags, CSR_FFLAGS)
@@ -4389,12 +4496,14 @@ DECLARE_CSR(sideleg, CSR_SIDELEG)
DECLARE_CSR(sie, CSR_SIE)
DECLARE_CSR(stvec, CSR_STVEC)
DECLARE_CSR(scounteren, CSR_SCOUNTEREN)
+DECLARE_CSR(senvcfg, CSR_SENVCFG)
DECLARE_CSR(sscratch, CSR_SSCRATCH)
DECLARE_CSR(sepc, CSR_SEPC)
DECLARE_CSR(scause, CSR_SCAUSE)
DECLARE_CSR(stval, CSR_STVAL)
DECLARE_CSR(sip, CSR_SIP)
DECLARE_CSR(satp, CSR_SATP)
+DECLARE_CSR(scontext, CSR_SCONTEXT)
DECLARE_CSR(vsstatus, CSR_VSSTATUS)
DECLARE_CSR(vsie, CSR_VSIE)
DECLARE_CSR(vstvec, CSR_VSTVEC)
@@ -4411,11 +4520,13 @@ DECLARE_CSR(hie, CSR_HIE)
DECLARE_CSR(htimedelta, CSR_HTIMEDELTA)
DECLARE_CSR(hcounteren, CSR_HCOUNTEREN)
DECLARE_CSR(hgeie, CSR_HGEIE)
+DECLARE_CSR(henvcfg, CSR_HENVCFG)
DECLARE_CSR(htval, CSR_HTVAL)
DECLARE_CSR(hip, CSR_HIP)
DECLARE_CSR(hvip, CSR_HVIP)
DECLARE_CSR(htinst, CSR_HTINST)
DECLARE_CSR(hgatp, CSR_HGATP)
+DECLARE_CSR(hcontext, CSR_HCONTEXT)
DECLARE_CSR(hgeip, CSR_HGEIP)
DECLARE_CSR(utvt, CSR_UTVT)
DECLARE_CSR(unxti, CSR_UNXTI)
@@ -4439,6 +4550,7 @@ DECLARE_CSR(mideleg, CSR_MIDELEG)
DECLARE_CSR(mie, CSR_MIE)
DECLARE_CSR(mtvec, CSR_MTVEC)
DECLARE_CSR(mcounteren, CSR_MCOUNTEREN)
+DECLARE_CSR(menvcfg, CSR_MENVCFG)
DECLARE_CSR(mcountinhibit, CSR_MCOUNTINHIBIT)
DECLARE_CSR(mscratch, CSR_MSCRATCH)
DECLARE_CSR(mepc, CSR_MEPC)
@@ -4451,6 +4563,18 @@ DECLARE_CSR(pmpcfg0, CSR_PMPCFG0)
DECLARE_CSR(pmpcfg1, CSR_PMPCFG1)
DECLARE_CSR(pmpcfg2, CSR_PMPCFG2)
DECLARE_CSR(pmpcfg3, CSR_PMPCFG3)
+DECLARE_CSR(pmpcfg4, CSR_PMPCFG4)
+DECLARE_CSR(pmpcfg5, CSR_PMPCFG5)
+DECLARE_CSR(pmpcfg6, CSR_PMPCFG6)
+DECLARE_CSR(pmpcfg7, CSR_PMPCFG7)
+DECLARE_CSR(pmpcfg8, CSR_PMPCFG8)
+DECLARE_CSR(pmpcfg9, CSR_PMPCFG9)
+DECLARE_CSR(pmpcfg10, CSR_PMPCFG10)
+DECLARE_CSR(pmpcfg11, CSR_PMPCFG11)
+DECLARE_CSR(pmpcfg12, CSR_PMPCFG12)
+DECLARE_CSR(pmpcfg13, CSR_PMPCFG13)
+DECLARE_CSR(pmpcfg14, CSR_PMPCFG14)
+DECLARE_CSR(pmpcfg15, CSR_PMPCFG15)
DECLARE_CSR(pmpaddr0, CSR_PMPADDR0)
DECLARE_CSR(pmpaddr1, CSR_PMPADDR1)
DECLARE_CSR(pmpaddr2, CSR_PMPADDR2)
@@ -4467,6 +4591,55 @@ DECLARE_CSR(pmpaddr12, CSR_PMPADDR12)
DECLARE_CSR(pmpaddr13, CSR_PMPADDR13)
DECLARE_CSR(pmpaddr14, CSR_PMPADDR14)
DECLARE_CSR(pmpaddr15, CSR_PMPADDR15)
+DECLARE_CSR(pmpaddr16, CSR_PMPADDR16)
+DECLARE_CSR(pmpaddr17, CSR_PMPADDR17)
+DECLARE_CSR(pmpaddr18, CSR_PMPADDR18)
+DECLARE_CSR(pmpaddr19, CSR_PMPADDR19)
+DECLARE_CSR(pmpaddr20, CSR_PMPADDR20)
+DECLARE_CSR(pmpaddr21, CSR_PMPADDR21)
+DECLARE_CSR(pmpaddr22, CSR_PMPADDR22)
+DECLARE_CSR(pmpaddr23, CSR_PMPADDR23)
+DECLARE_CSR(pmpaddr24, CSR_PMPADDR24)
+DECLARE_CSR(pmpaddr25, CSR_PMPADDR25)
+DECLARE_CSR(pmpaddr26, CSR_PMPADDR26)
+DECLARE_CSR(pmpaddr27, CSR_PMPADDR27)
+DECLARE_CSR(pmpaddr28, CSR_PMPADDR28)
+DECLARE_CSR(pmpaddr29, CSR_PMPADDR29)
+DECLARE_CSR(pmpaddr30, CSR_PMPADDR30)
+DECLARE_CSR(pmpaddr31, CSR_PMPADDR31)
+DECLARE_CSR(pmpaddr32, CSR_PMPADDR32)
+DECLARE_CSR(pmpaddr33, CSR_PMPADDR33)
+DECLARE_CSR(pmpaddr34, CSR_PMPADDR34)
+DECLARE_CSR(pmpaddr35, CSR_PMPADDR35)
+DECLARE_CSR(pmpaddr36, CSR_PMPADDR36)
+DECLARE_CSR(pmpaddr37, CSR_PMPADDR37)
+DECLARE_CSR(pmpaddr38, CSR_PMPADDR38)
+DECLARE_CSR(pmpaddr39, CSR_PMPADDR39)
+DECLARE_CSR(pmpaddr40, CSR_PMPADDR40)
+DECLARE_CSR(pmpaddr41, CSR_PMPADDR41)
+DECLARE_CSR(pmpaddr42, CSR_PMPADDR42)
+DECLARE_CSR(pmpaddr43, CSR_PMPADDR43)
+DECLARE_CSR(pmpaddr44, CSR_PMPADDR44)
+DECLARE_CSR(pmpaddr45, CSR_PMPADDR45)
+DECLARE_CSR(pmpaddr46, CSR_PMPADDR46)
+DECLARE_CSR(pmpaddr47, CSR_PMPADDR47)
+DECLARE_CSR(pmpaddr48, CSR_PMPADDR48)
+DECLARE_CSR(pmpaddr49, CSR_PMPADDR49)
+DECLARE_CSR(pmpaddr50, CSR_PMPADDR50)
+DECLARE_CSR(pmpaddr51, CSR_PMPADDR51)
+DECLARE_CSR(pmpaddr52, CSR_PMPADDR52)
+DECLARE_CSR(pmpaddr53, CSR_PMPADDR53)
+DECLARE_CSR(pmpaddr54, CSR_PMPADDR54)
+DECLARE_CSR(pmpaddr55, CSR_PMPADDR55)
+DECLARE_CSR(pmpaddr56, CSR_PMPADDR56)
+DECLARE_CSR(pmpaddr57, CSR_PMPADDR57)
+DECLARE_CSR(pmpaddr58, CSR_PMPADDR58)
+DECLARE_CSR(pmpaddr59, CSR_PMPADDR59)
+DECLARE_CSR(pmpaddr60, CSR_PMPADDR60)
+DECLARE_CSR(pmpaddr61, CSR_PMPADDR61)
+DECLARE_CSR(pmpaddr62, CSR_PMPADDR62)
+DECLARE_CSR(pmpaddr63, CSR_PMPADDR63)
+DECLARE_CSR(mseccfg, CSR_MSECCFG)
DECLARE_CSR(tselect, CSR_TSELECT)
DECLARE_CSR(tdata1, CSR_TDATA1)
DECLARE_CSR(tdata2, CSR_TDATA2)
@@ -4474,7 +4647,7 @@ DECLARE_CSR(tdata3, CSR_TDATA3)
DECLARE_CSR(tinfo, CSR_TINFO)
DECLARE_CSR(tcontrol, CSR_TCONTROL)
DECLARE_CSR(mcontext, CSR_MCONTEXT)
-DECLARE_CSR(scontext, CSR_SCONTEXT)
+DECLARE_CSR(mscontext, CSR_MSCONTEXT)
DECLARE_CSR(dcsr, CSR_DCSR)
DECLARE_CSR(dpc, CSR_DPC)
DECLARE_CSR(dscratch0, CSR_DSCRATCH0)
@@ -4543,7 +4716,9 @@ DECLARE_CSR(mvendorid, CSR_MVENDORID)
DECLARE_CSR(marchid, CSR_MARCHID)
DECLARE_CSR(mimpid, CSR_MIMPID)
DECLARE_CSR(mhartid, CSR_MHARTID)
+DECLARE_CSR(mconfigptr, CSR_MCONFIGPTR)
DECLARE_CSR(htimedeltah, CSR_HTIMEDELTAH)
+DECLARE_CSR(henvcfgh, CSR_HENVCFGH)
DECLARE_CSR(cycleh, CSR_CYCLEH)
DECLARE_CSR(timeh, CSR_TIMEH)
DECLARE_CSR(instreth, CSR_INSTRETH)
@@ -4577,6 +4752,8 @@ DECLARE_CSR(hpmcounter29h, CSR_HPMCOUNTER29H)
DECLARE_CSR(hpmcounter30h, CSR_HPMCOUNTER30H)
DECLARE_CSR(hpmcounter31h, CSR_HPMCOUNTER31H)
DECLARE_CSR(mstatush, CSR_MSTATUSH)
+DECLARE_CSR(menvcfgh, CSR_MENVCFGH)
+DECLARE_CSR(mseccfgh, CSR_MSECCFGH)
DECLARE_CSR(mcycleh, CSR_MCYCLEH)
DECLARE_CSR(minstreth, CSR_MINSTRETH)
DECLARE_CSR(mhpmcounter3h, CSR_MHPMCOUNTER3H)