ext: Make gem5-SST support CMOs
Change-Id: I45047702018512dfef5a93a633871821f3c69820
Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53626
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Reviewed-by: Hoa Nguyen <hoanguyen@ucdavis.edu>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
diff --git a/ext/sst/translator.hh b/ext/sst/translator.hh
index a2faebb..2d8c8b7 100644
--- a/ext/sst/translator.hh
+++ b/ext/sst/translator.hh
@@ -48,6 +48,7 @@
switch ((gem5::MemCmd::Command)pkt->cmd.toInt()) {
case gem5::MemCmd::HardPFReq:
case gem5::MemCmd::SoftPFReq:
+ case gem5::MemCmd::SoftPFExReq:
case gem5::MemCmd::LoadLockedReq:
case gem5::MemCmd::ReadExReq:
case gem5::MemCmd::ReadReq:
@@ -58,8 +59,15 @@
case gem5::MemCmd::WriteReq:
cmd = SST::Interfaces::SimpleMem::Request::Command::Write;
break;
+ case gem5::MemCmd::CleanInvalidReq:
+ case gem5::MemCmd::InvalidateReq:
+ cmd = SST::Interfaces::SimpleMem::Request::Command::FlushLineInv;
+ break;
+ case gem5::MemCmd::CleanSharedReq:
+ cmd = SST::Interfaces::SimpleMem::Request::Command::FlushLine;
+ break;
default:
- assert(false && "Unable to convert gem5 packet");
+ panic("Unable to convert gem5 packet: %s\n", pkt->cmd.toString());
}
SST::Interfaces::SimpleMem::Addr addr = pkt->getAddr();