diff options
author | Nathan Binkert <nate@binkert.org> | 2008-06-15 21:34:32 -0700 |
---|---|---|
committer | Nathan Binkert <nate@binkert.org> | 2008-06-15 21:34:32 -0700 |
commit | e3c267a3dbe628516777dd74662c786ef4eedceb (patch) | |
tree | 1896fcf08d73fb919ef361e678fddc044cb976a9 /src/mem/port.cc | |
parent | b429b1759defba2f8da1f894f6a3500e3f2c78d2 (diff) | |
download | gem5-e3c267a3dbe628516777dd74662c786ef4eedceb.tar.xz |
port: Clean up default port setup and port switchover code.
Diffstat (limited to 'src/mem/port.cc')
-rw-r--r-- | src/mem/port.cc | 26 |
1 files changed, 17 insertions, 9 deletions
diff --git a/src/mem/port.cc b/src/mem/port.cc index ce3f6c74b..0e03194c9 100644 --- a/src/mem/port.cc +++ b/src/mem/port.cc @@ -39,17 +39,18 @@ #include "mem/mem_object.hh" #include "mem/port.hh" -class defaultPeerPortClass: public Port +class DefaultPeerPort : public Port { protected: void blowUp() { - fatal("Unconnected port!"); + fatal("%s: Unconnected port!", peer->name()); } public: - defaultPeerPortClass() : Port("default_port") - {} + DefaultPeerPort() + : Port("default_port") + { } bool recvTiming(PacketPtr) { @@ -84,16 +85,22 @@ class defaultPeerPortClass: public Port blowUp(); } - bool isDefaultPort() { return true; } + bool isDefaultPort() const { return true; } +}; -} defaultPeerPort; +DefaultPeerPort defaultPeerPort; -Port::Port() : peer(&defaultPeerPort), owner(NULL) +Port::Port() + : peer(&defaultPeerPort), owner(NULL) { } -Port::Port(const std::string &_name, MemObject *_owner) : - portName(_name), peer(&defaultPeerPort), owner(_owner) +Port::Port(const std::string &_name, MemObject *_owner) + : portName(_name), peer(&defaultPeerPort), owner(_owner) +{ +} + +Port::~Port() { } @@ -101,6 +108,7 @@ void Port::setPeer(Port *port) { DPRINTF(Config, "setting peer to %s\n", port->name()); + peer = port; } |