Browse Source

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
pull/1416/head
YenHaoChen 3 years ago
parent
commit
7f22022e1a
  1. 2
      riscv/csrs.cc
  2. 2
      riscv/csrs.h

2
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 {

2
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;

Loading…
Cancel
Save