aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYenHaoChen <howard25336284@gmail.com>2023-07-17 12:14:14 +0800
committerYenHaoChen <howard25336284@gmail.com>2023-07-25 08:41:17 +0800
commit7f22022e1ad4019afb18e48ceb76ec9e6f483b50 (patch)
tree6c94acc7c2ed1b0e52dcc8a86a19cb8f2e0bdf76
parentf6e7338b26f1508bdcc823ff1920427bf72e95ae (diff)
downloadriscv-isa-sim-7f22022e1ad4019afb18e48ceb76ec9e6f483b50.zip
riscv-isa-sim-7f22022e1ad4019afb18e48ceb76ec9e6f483b50.tar.gz
riscv-isa-sim-7f22022e1ad4019afb18e48ceb76ec9e6f483b50.tar.bz2
legalize senvcfg.CBIE
The value 2 of senvcfg.CBIE is reserved. This commit legalizes it to 0. Reference: https://github.com/riscv/riscv-CMOs/issues/65
-rw-r--r--riscv/csrs.cc2
-rw-r--r--riscv/csrs.h2
2 files changed, 2 insertions, 2 deletions
diff --git a/riscv/csrs.cc b/riscv/csrs.cc
index a895b6c..65f5594 100644
--- a/riscv/csrs.cc
+++ b/riscv/csrs.cc
@@ -1476,7 +1476,7 @@ void sstateen_csr_t::verify_permissions(insn_t insn, bool write) const {
// implement class senvcfg_csr_t
senvcfg_csr_t::senvcfg_csr_t(processor_t* const proc, const reg_t addr, const reg_t mask,
const reg_t init):
- masked_csr_t(proc, addr, mask, init) {
+ envcfg_csr_t(proc, addr, mask, init) {
}
void senvcfg_csr_t::verify_permissions(insn_t insn, bool write) const {
diff --git a/riscv/csrs.h b/riscv/csrs.h
index f152802..f08262b 100644
--- a/riscv/csrs.h
+++ b/riscv/csrs.h
@@ -759,7 +759,7 @@ class sstateen_csr_t: public hstateen_csr_t {
virtual bool unlogged_write(const reg_t val) noexcept override;
};
-class senvcfg_csr_t final: public masked_csr_t {
+class senvcfg_csr_t final: public envcfg_csr_t {
public:
senvcfg_csr_t(processor_t* const proc, const reg_t addr, const reg_t mask, const reg_t init);
virtual void verify_permissions(insn_t insn, bool write) const override;