From 6f7369296c6fde70f81aaa255ec355b3514be642 Mon Sep 17 00:00:00 2001 From: Dolu1990 Date: Wed, 3 Jul 2024 09:05:13 +0200 Subject: [PATCH] Fix #112 mstatus.tw --- src/main/scala/naxriscv/execute/EnvCallPlugin.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/scala/naxriscv/execute/EnvCallPlugin.scala b/src/main/scala/naxriscv/execute/EnvCallPlugin.scala index e073cd28..09452021 100644 --- a/src/main/scala/naxriscv/execute/EnvCallPlugin.scala +++ b/src/main/scala/naxriscv/execute/EnvCallPlugin.scala @@ -83,7 +83,7 @@ class EnvCallPlugin(val euId : String)(var rescheduleAt : Int = 0) extends Plugi setup.reschedule.valid := isValid && ( EBREAK || ECALL || XRET || FENCE_I || FLUSH_DATA || FENCE_VMA || - WFI && priv.logic.machine.mstatus.tw && !priv.isMachine() + WFI && (priv.logic.machine.mstatus.tw && !priv.isMachine() || priv.isUser()) ) setup.reschedule.robId := ROB.ID setup.reschedule.tval := B(PC).andMask(EBREAK) //That's what spike do