Go to the documentation of this file.
35 #include "debug/DirectedTest.hh"
43 m_status = InvalidateGeneratorStatus_Load_Waiting;
69 if (
m_status == InvalidateGeneratorStatus_Load_Waiting) {
70 DPRINTF(DirectedTest,
"initiating read\n");
73 pkt =
new Packet(req, cmd);
74 }
else if (
m_status == InvalidateGeneratorStatus_Inv_Waiting) {
75 DPRINTF(DirectedTest,
"initiating invalidating write\n");
78 pkt =
new Packet(req, cmd);
80 panic(
"initiate was unexpectedly called\n");
85 DPRINTF(DirectedTest,
"initiating request - successful\n");
86 if (
m_status == InvalidateGeneratorStatus_Load_Waiting) {
87 m_status = InvalidateGeneratorStatus_Load_Pending;
89 m_status = InvalidateGeneratorStatus_Inv_Pending;
98 DPRINTF(DirectedTest,
"failed to issue request - sequencer not ready\n");
108 if (
m_status == InvalidateGeneratorStatus_Load_Pending) {
115 m_status = InvalidateGeneratorStatus_Inv_Waiting;
118 m_status = InvalidateGeneratorStatus_Load_Waiting;
120 }
else if (
m_status == InvalidateGeneratorStatus_Inv_Pending) {
132 m_status = InvalidateGeneratorStatus_Load_Waiting;
138 InvalidateGeneratorParams::create()
InvalidateGeneratorStatus m_status
InvalidateGenerator(const Params *p)
std::shared_ptr< Request > RequestPtr
Command
List of all commands associated with a packet.
bool sendTimingReq(PacketPtr pkt)
Attempt to send a timing request to the responder port by calling its corresponding receive function.
uint32_t m_active_read_node
uint32_t m_addr_increment_size
A RequestPort is a specialisation of a Port, which implements the default protocol for the three diff...
DirectedGeneratorParams Params
ProbePointArg< PacketInfo > Packet
Packet probe point.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
RequestPort * getCpuPort(int idx)
RubyDirectedTester * m_directed_tester
A Packet is used to encapsulate a transfer between two objects in the memory system (e....
uint32_t m_active_inv_node
void allocate()
Allocate memory for the packet.
void performCallback(uint32_t proc, Addr address)
#define panic(...)
This implements a cprintf based panic() function.
void incrementCycleCompletions()
Generated on Wed Sep 30 2020 14:02:09 for gem5 by doxygen 1.8.17