aboutsummaryrefslogtreecommitdiff
path: root/model/riscv_sys_regs.sail
diff options
context:
space:
mode:
Diffstat (limited to 'model/riscv_sys_regs.sail')
-rw-r--r--model/riscv_sys_regs.sail6
1 files changed, 3 insertions, 3 deletions
diff --git a/model/riscv_sys_regs.sail b/model/riscv_sys_regs.sail
index 4774469..cb44664 100644
--- a/model/riscv_sys_regs.sail
+++ b/model/riscv_sys_regs.sail
@@ -164,10 +164,10 @@ function legalize_misa(m : Misa, v : xlenbits) -> Misa = {
else {
/* Suppress enabling C if C was disabled at boot (i.e. not supported) */
let m = if not(sys_enable_rvc()) then m else update_C(m, v.C());
- /* Handle updates for F/D. */
- if not(sys_enable_fdext()) | (v.D() == 0b1 & v.F() == 0b0)
+ /* Suppress updates to misa.{f,d} if disabled at boot */
+ if not(sys_enable_fdext())
then m
- else update_D(update_F(m, v.F()), v.D())
+ else update_D(update_F(m, v.F()), v.D() & v.F())
}
}