From f5bd6398631b0a6510bf9fa3bf7c471b62bd24cc Mon Sep 17 00:00:00 2001 From: Andrew Waterman Date: Wed, 20 Sep 2017 10:52:41 -0700 Subject: [PATCH] Don't write badaddr on misaligned fetch exceptions It's optional, and we were doing it wrong before, so just don't do it. --- src/main/scala/rocket/CSR.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/scala/rocket/CSR.scala b/src/main/scala/rocket/CSR.scala index 929ce31a..fefc41b5 100644 --- a/src/main/scala/rocket/CSR.scala +++ b/src/main/scala/rocket/CSR.scala @@ -510,7 +510,7 @@ class CSRFile(perfEventSets: EventSets = new EventSets(Seq()))(implicit p: Param val epc = ~(~io.pc | (coreInstBytes-1)) val write_badaddr = cause isOneOf (Causes.illegal_instruction, Causes.breakpoint, - Causes.misaligned_load, Causes.misaligned_store, Causes.misaligned_fetch, + Causes.misaligned_load, Causes.misaligned_store, Causes.load_access, Causes.store_access, Causes.fetch_access, Causes.load_page_fault, Causes.store_page_fault, Causes.fetch_page_fault) val badaddr_value = Mux(write_badaddr, io.badaddr, 0.U)