Oops... some places in C++ explicitly ask for a "functional"
authorSteve Reinhardt <stever@eecs.umich.edu>
Sat, 19 May 2007 05:20:58 +0000 (01:20 -0400)
committerSteve Reinhardt <stever@eecs.umich.edu>
Sat, 19 May 2007 05:20:58 +0000 (01:20 -0400)
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

src/mem/physical.cc

index 2ca3f1c83780cec240a8dc086d343cd8c5daa0d1..a49959e51700ddd4e4f18fdf44bf45ff93a78538 100644 (file)
@@ -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);
     }