summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Reinhardt <stever@eecs.umich.edu>2007-05-19 01:20:58 -0400
committerSteve Reinhardt <stever@eecs.umich.edu>2007-05-19 01:20:58 -0400
commitaa5b595f39b778d0f6532b40761ca5d6275c2aa0 (patch)
treef66d54dfc7db6c8dc7196760085f33bc60629ec0
parent0305159abf40765c6b8c506c777e3f62f3b6227e (diff)
downloadgem5-aa5b595f39b778d0f6532b40761ca5d6275c2aa0.tar.xz
Oops... some places in C++ explicitly ask for a "functional"
port. It would be better to move this to python IMO but for now I'll stick in a compatibility hack. --HG-- extra : convert_revision : a81a29cbd43becd0e485559eb7b2a31f7a0b082d
-rw-r--r--src/mem/physical.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/mem/physical.cc b/src/mem/physical.cc
index 2ca3f1c83..a49959e51 100644
--- a/src/mem/physical.cc
+++ b/src/mem/physical.cc
@@ -336,6 +336,13 @@ PhysicalMemory::doFunctionalAccess(PacketPtr pkt)
Port *
PhysicalMemory::getPort(const std::string &if_name, int idx)
{
+ // Accept request for "functional" port for backwards compatibility
+ // with places where this function is called from C++. I'd prefer
+ // to move all these into Python someday.
+ if (if_name == "functional") {
+ return new MemoryPort(csprintf("%s-functional", name()), this);
+ }
+
if (if_name != "port") {
panic("PhysicalMemory::getPort: unknown port %s requested", if_name);
}