Properly save/restore dpc, mcause, mbadaddr.
[riscv-isa-sim.git] / riscv / insns / sret.h
index f5e89e44686e740860c60c9c7d317826add6febe..dc2fee0fb0771385d671c2b9435d2d76a26897ae 100644 (file)
@@ -7,3 +7,6 @@ s = set_field(s, MSTATUS_SPIE, 0);
 s = set_field(s, MSTATUS_SPP, PRV_U);
 p->set_privilege(prev_prv);
 p->set_csr(CSR_MSTATUS, s);
+
+/* We're not in Debug Mode anymore. */
+STATE.dcsr.cause = 0;