Fixed some void functions with returns, first stab at cpu ports.

cpu/simple/cpu.hh:
    Adding port definitions to simple cpu, still needs work.
mem/bus.hh:
    no return for void functions

--HG--
extra : convert_revision : 42e5bc16af187d3a46eb25a15b600a8a11b88cc5
This commit is contained in:
Ron Dreslinski 2006-01-31 14:39:41 -05:00
parent fccd113e2f
commit 2f644efafa
2 changed files with 35 additions and 1 deletions

View file

@ -63,6 +63,40 @@ namespace Trace {
class SimpleCPU : public BaseCPU
{
class CpuPort : public Port
{
SimpleCPU *cpu;
public:
CpuPort(SimpleCPU *_cpu)
: cpu(_cpu)
{ }
protected:
virtual bool recvTiming(Packet &pkt)
{ return cpu->recvTiming(pkt); }
virtual Tick recvAtomic(Packet &pkt)
{ return cpu->recvAtomic(pkt); }
virtual void recvFunctional(Packet &pkt)
{ cpu->recvFunctional(pkt); }
virtual void recvStatusChange(Status status)
{ cpu->recvStatusChange(status); }
};
CpuPort icache_port;
CpuPort dcache_port;
bool recvTiming(Packet &pkt);
Tick recvAtomic(Packet &pkt);
void recvFunctional(Packet &pkt);
public:
// main simulation loop (one cycle)
void tick();

View file

@ -92,7 +92,7 @@ class Bus : public MemObject
/** When reciving a Functional requestfrom the peer port (at id),
pass it to the bus. */
virtual void recvFunctional(Packet &pkt)
{ return bus->recvFunctional(pkt, id); }
{ bus->recvFunctional(pkt, id); }
/** When reciving a status changefrom the peer port (at id),
pass it to the bus. */