Skip to content

Commit faeef6e

Browse files
committed
pointer masking: Let [sh]envcfg.PMM be WARL if with Ssnpm
1 parent 370f741 commit faeef6e

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

riscv/processor.cc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -405,11 +405,13 @@ void state_t::reset(processor_t* const proc, reg_t max_isa)
405405
}
406406
const reg_t senvcfg_mask = (proc->extension_enabled(EXT_ZICBOM) ? SENVCFG_CBCFE | SENVCFG_CBIE : 0) |
407407
(proc->extension_enabled(EXT_ZICBOZ) ? SENVCFG_CBZE : 0) |
408+
(proc->extension_enabled(EXT_SSNPM) ? SENVCFG_PMM : 0) |
408409
(proc->extension_enabled(EXT_ZICFILP) ? SENVCFG_LPE : 0) |
409410
(proc->extension_enabled(EXT_ZICFISS) ? SENVCFG_SSE : 0);
410411
csrmap[CSR_SENVCFG] = senvcfg = std::make_shared<senvcfg_csr_t>(proc, CSR_SENVCFG, senvcfg_mask, 0);
411412
const reg_t henvcfg_mask = (proc->extension_enabled(EXT_ZICBOM) ? HENVCFG_CBCFE | HENVCFG_CBIE : 0) |
412413
(proc->extension_enabled(EXT_ZICBOZ) ? HENVCFG_CBZE : 0) |
414+
(proc->extension_enabled(EXT_SSNPM) ? HENVCFG_PMM : 0) |
413415
(proc->extension_enabled(EXT_SVADU) ? HENVCFG_ADUE: 0) |
414416
(proc->extension_enabled(EXT_SVPBMT) ? HENVCFG_PBMTE : 0) |
415417
(proc->extension_enabled(EXT_SSTC) ? HENVCFG_STCE : 0) |

0 commit comments

Comments
 (0)