diff options
author | Weiwei Li <liweiwei@iscas.ac.cn> | 2022-07-04 21:31:09 +0800 |
---|---|---|
committer | Weiwei Li <liweiwei@iscas.ac.cn> | 2022-08-09 15:45:15 +0800 |
commit | ba10686fd18f3fbb036ca04b906deb57e7d1fe54 (patch) | |
tree | a3d7fb6ac1c8b2d531203cfb8402b02e1d9ed767 /riscv/csrs.h | |
parent | 5672c4a41ad7a9af011d385962c175a5a6012fd9 (diff) | |
download | spike-ba10686fd18f3fbb036ca04b906deb57e7d1fe54.zip spike-ba10686fd18f3fbb036ca04b906deb57e7d1fe54.tar.gz spike-ba10686fd18f3fbb036ca04b906deb57e7d1fe54.tar.bz2 |
add support for sscofpmf extension v0.5.2
since spike doesn't truly support counting of hardware performance events,
only csr related read/write functions is supported currently
Diffstat (limited to 'riscv/csrs.h')
-rw-r--r-- | riscv/csrs.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/riscv/csrs.h b/riscv/csrs.h index acd889c..5503255 100644 --- a/riscv/csrs.h +++ b/riscv/csrs.h @@ -744,4 +744,13 @@ class virtualized_stimecmp_csr_t: public virtualized_csr_t { virtualized_stimecmp_csr_t(processor_t* const proc, csr_t_p orig, csr_t_p virt); virtual void verify_permissions(insn_t insn, bool write) const override; }; + +class scountovf_csr_t: public csr_t { + public: + scountovf_csr_t(processor_t* const proc, const reg_t addr); + virtual void verify_permissions(insn_t insn, bool write) const override; + virtual reg_t read() const noexcept override; + protected: + virtual bool unlogged_write(const reg_t val) noexcept override; +}; #endif |