aboutsummaryrefslogtreecommitdiff
path: root/riscv/csrs.h
diff options
context:
space:
mode:
authorScott Johnson <scott.johnson@arilinc.com>2021-09-20 13:08:23 -0700
committerScott Johnson <scott.johnson@arilinc.com>2021-09-25 23:50:52 -0700
commitbf8578c04602c89f44aacecdbbc2abab738dac48 (patch)
treedf72187fab76eeea97d7f525c06421575e15979d /riscv/csrs.h
parentb4b23c29062151044d9aab3af446d6bea98a5329 (diff)
downloadspike-bf8578c04602c89f44aacecdbbc2abab738dac48.zip
spike-bf8578c04602c89f44aacecdbbc2abab738dac48.tar.gz
spike-bf8578c04602c89f44aacecdbbc2abab738dac48.tar.bz2
Convert mtval2 to csr_t
Diffstat (limited to 'riscv/csrs.h')
-rw-r--r--riscv/csrs.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/riscv/csrs.h b/riscv/csrs.h
index 8400b11..e8ac84f 100644
--- a/riscv/csrs.h
+++ b/riscv/csrs.h
@@ -488,4 +488,12 @@ class counter_proxy_csr_t: public proxy_csr_t {
bool myenable(csr_t_p counteren) const noexcept;
};
+
+// For machine-level CSRs that only exist with Hypervisor
+class hypervisor_csr_t: public basic_csr_t {
+ public:
+ hypervisor_csr_t(processor_t* const proc, const reg_t addr);
+ virtual void verify_permissions(insn_t insn, bool write) const override;
+};
+
#endif