Bump mpact-riscv version to support kelvin op breakpoint

PiperOrigin-RevId: 558877192
diff --git a/WORKSPACE b/WORKSPACE
index c47f538..75d2e3f 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -6,9 +6,9 @@
 # MPACT-RiscV repo
 http_archive(
     name = "com_google_mpact-riscv",
-    sha256 = "b293e55147a2ce2067a25032cef6b27f6450f3ef383e02d5607d53d910208e68",
-    strip_prefix = "mpact-riscv-f66002025ec6c585839568112cabc1ce19d1b919",
-    url = "https://github.com/google/mpact-riscv/archive/f66002025ec6c585839568112cabc1ce19d1b919.tar.gz",
+    sha256 = "244236ecf63f812eedf4e1c80e79276374d4c8a9222860220706522edf093fc8",
+    strip_prefix = "mpact-riscv-8b0c6b7fa4f48d6dba99c1a4abba3bb548577cad",
+    url = "https://github.com/google/mpact-riscv/archive/8b0c6b7fa4f48d6dba99c1a4abba3bb548577cad.tar.gz",
 )
 
 # MPACT-Sim repo
diff --git a/sim/kelvin_top.cc b/sim/kelvin_top.cc
index a4b92da..61ea668 100644
--- a/sim/kelvin_top.cc
+++ b/sim/kelvin_top.cc
@@ -102,9 +102,13 @@
   // Register instruction counter.
   CHECK_OK(AddCounter(&counter_num_instructions_))
       << "Failed to register counter";
+
+  // Always return 4-byte breakpoint instruction size
   rv_bp_manager_ = new mpact::sim::riscv::RiscVBreakpointManager(
-      memory_, absl::bind_front(&mpact::sim::generic::DecodeCache::Invalidate,
-                                decode_cache_));
+      memory_,
+      absl::bind_front(&mpact::sim::generic::DecodeCache::Invalidate,
+                       decode_cache_),
+      [](uint64_t, uint32_t) -> int { return 4; });
   // Make sure the architectural and abi register aliases are added.
   std::string reg_name;
   for (int i = 0; i < 32; i++) {