aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--riscv/insns/mret.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/riscv/insns/mret.h b/riscv/insns/mret.h
index a6fcd13..7cb1f62 100644
--- a/riscv/insns/mret.h
+++ b/riscv/insns/mret.h
@@ -10,4 +10,5 @@ s = set_field(s, MSTATUS_MPIE, 1);
s = set_field(s, MSTATUS_MPP, p->extension_enabled('U') ? PRV_U : PRV_M);
s = set_field(s, MSTATUS_MPV, 0);
STATE.mstatus->write(s);
+if (STATE.mstatush) STATE.mstatush->write(s >> 32); // log mstatush change
p->set_privilege(prev_prv, prev_virt);