fastmodel: Tell fast model not to shutdown when time stops.
authorGabe Black <gabeblack@google.com>
Tue, 22 Oct 2019 01:01:31 +0000 (18:01 -0700)
committerGabe Black <gabeblack@google.com>
Tue, 17 Dec 2019 23:17:28 +0000 (23:17 +0000)
Change-Id: I000e7809a2c8850eb31e5615caf1d88b537fea8d
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/22121
Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Reviewed-by: Chun-Chen TK Hsu <chunchenhsu@google.com>
Maintainer: Giacomo Travaglini <giacomo.travaglini@arm.com>
Tested-by: kokoro <noreply+kokoro@google.com>
src/arch/arm/fastmodel/iris/cpu.cc

index d66cf1dbcdde7ecc6b7bfc3422d71d013c7e3993..e5d95ef65c97b889bacdcfc6c8d84491cc545f44 100644 (file)
@@ -30,6 +30,7 @@
 #include "arch/arm/fastmodel/iris/cpu.hh"
 
 #include "arch/arm/fastmodel/iris/thread_context.hh"
+#include "scx/scx.h"
 
 namespace Iris
 {
@@ -60,6 +61,12 @@ BaseCPU::BaseCPU(BaseCPUParams *params, sc_core::sc_module *_evs) :
     panic_if(base && !sendFunctional,
             "The EVS send functional attribute is not of type "
             "sc_attribute<PortProxy::SendFunctionalFunc>.");
+
+    // Make sure fast model knows we're using debugging mechanisms to control
+    // the simulation, and it shouldn't shut down if simulation time stops
+    // for some reason. Despite the misleading name, this doesn't start a CADI
+    // server because it's first parameter is false.
+    scx::scx_start_cadi_server(false, false, true);
 }
 
 BaseCPU::~BaseCPU()