diff options
author | Andrew Waterman <andrew@sifive.com> | 2022-03-15 20:19:08 -0700 |
---|---|---|
committer | Andrew Waterman <andrew@sifive.com> | 2022-03-15 20:19:08 -0700 |
commit | 5be1cac080288c90a0019eeb791cebb31307899c (patch) | |
tree | 8950b78f1229f29a9d7253752885448b8b980dcc /riscv/csrs.h | |
parent | 2528ad66c11bc44309135c9ab0896e2907847105 (diff) | |
download | spike-5be1cac080288c90a0019eeb791cebb31307899c.zip spike-5be1cac080288c90a0019eeb791cebb31307899c.tar.gz spike-5be1cac080288c90a0019eeb791cebb31307899c.tar.bz2 |
Move sstatus_proxy_csr_t defn below that of mstatus_csr_t
This will allow the former to depend on the latter in a future commit.
Diffstat (limited to 'riscv/csrs.h')
-rw-r--r-- | riscv/csrs.h | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/riscv/csrs.h b/riscv/csrs.h index 688ad6b..ff7488b 100644 --- a/riscv/csrs.h +++ b/riscv/csrs.h @@ -215,17 +215,6 @@ class vsstatus_csr_t: public base_status_csr_t { typedef std::shared_ptr<vsstatus_csr_t> vsstatus_csr_t_p; -class sstatus_proxy_csr_t: public base_status_csr_t { - public: - sstatus_proxy_csr_t(processor_t* const proc, const reg_t addr, csr_t_p mstatus); - virtual reg_t read() const noexcept override; - protected: - virtual bool unlogged_write(const reg_t val) noexcept override; - private: - csr_t_p mstatus; -}; - - class mstatus_csr_t: public base_status_csr_t { public: mstatus_csr_t(processor_t* const proc, const reg_t addr); @@ -252,6 +241,17 @@ class mstatush_csr_t: public csr_t { }; +class sstatus_proxy_csr_t: public base_status_csr_t { + public: + sstatus_proxy_csr_t(processor_t* const proc, const reg_t addr, csr_t_p mstatus); + virtual reg_t read() const noexcept override; + protected: + virtual bool unlogged_write(const reg_t val) noexcept override; + private: + csr_t_p mstatus; +}; + + class sstatus_csr_t: public virtualized_csr_t { public: sstatus_csr_t(processor_t* const proc, base_status_csr_t_p orig, base_status_csr_t_p virt); |