MEM: Remove Port removeConn and MemObject deletePortRefs

Cleaning up and simplifying the ports and going towards a more strict
elaboration-time creation and binding of the ports.
This commit is contained in:
Andreas Hansson 2012-01-17 12:55:09 -06:00
parent 6315e5bbb5
commit 142380a373
8 changed files with 0 additions and 50 deletions

View file

@ -94,21 +94,6 @@ Bus::getPort(const std::string &if_name, int idx)
return bp;
}
void
Bus::deletePortRefs(Port *p)
{
BusPort *bp = dynamic_cast<BusPort*>(p);
if (bp == NULL)
panic("Couldn't convert Port* to BusPort*\n");
// If this is our one functional port
if (funcPort == bp)
return;
interfaces.erase(bp->getId());
clearBusCache();
delete bp;
}
/** Get the ranges of anyone other buses that we are connected to. */
void
Bus::init()

View file

@ -367,7 +367,6 @@ class Bus : public MemObject
/** A function used to return the port associated with this bus object. */
virtual Port *getPort(const std::string &if_name, int idx = -1);
virtual void deletePortRefs(Port *p);
virtual void init();
virtual void startup();

View file

@ -216,7 +216,6 @@ class Cache : public BaseCache
Cache(const Params *p, TagStore *tags, BasePrefetcher *prefetcher);
virtual Port *getPort(const std::string &if_name, int idx = -1);
virtual void deletePortRefs(Port *p);
void regStats();

View file

@ -114,17 +114,6 @@ Cache<TagStore>::getPort(const std::string &if_name, int idx)
}
}
template<class TagStore>
void
Cache<TagStore>::deletePortRefs(Port *p)
{
if (cpuSidePort == p || memSidePort == p)
panic("Can only delete functional ports\n");
delete p;
}
template<class TagStore>
void
Cache<TagStore>::cmpAndSwap(BlkType *blk, PacketPtr pkt)

View file

@ -34,9 +34,3 @@ MemObject::MemObject(const Params *params)
: SimObject(params)
{
}
void
MemObject::deletePortRefs(Port *p)
{
panic("This object does not support port deletion\n");
}

View file

@ -56,10 +56,6 @@ class MemObject : public SimObject
public:
/** Additional function to return the Port of a memory object. */
virtual Port *getPort(const std::string &if_name, int idx = -1) = 0;
/** Tell object that this port is about to disappear, so it should remove it
* from any structures that it's keeping it in. */
virtual void deletePortRefs(Port *p) ;
};
#endif //__MEM_MEM_OBJECT_HH__

View file

@ -63,14 +63,6 @@ Port::setOwner(MemObject *_owner)
owner = _owner;
}
void
Port::removeConn()
{
if (peer != NULL)
peer->getOwner()->deletePortRefs(peer);
peer = NULL;
}
void
Port::blobHelper(Addr addr, uint8_t *p, int size, MemCmd cmd)
{

View file

@ -123,10 +123,6 @@ class Port
/** Function to return the owner of this port. */
MemObject *getOwner() { return owner; }
/** Inform the peer port to delete itself and notify it's owner about it's
* demise. */
void removeConn();
bool isConnected() { return peer != NULL; }
protected: