diff options
author | Gabe Black <gblack@eecs.umich.edu> | 2006-11-12 22:36:22 -0500 |
---|---|---|
committer | Gabe Black <gblack@eecs.umich.edu> | 2006-11-12 22:36:22 -0500 |
commit | 14cb2264c80eb961eab1f80738e0144b6179d1a3 (patch) | |
tree | 1b8683e8a28d755abd31fa980c0c5505e92e580b /src/mem/packet.hh | |
parent | fd35f02efe5707539d2268fc844131e737f56983 (diff) | |
parent | d2d44317528ffadf81fbb95c92291d8d2d4a2190 (diff) | |
download | gem5-14cb2264c80eb961eab1f80738e0144b6179d1a3.tar.xz |
Merge zizzer.eecs.umich.edu:/bk/newmem/
into zeep.eecs.umich.edu:/home/gblack/m5/newmemmemops
--HG--
extra : convert_revision : eed3b6a650635d43fe75c2158c8417647af640d9
Diffstat (limited to 'src/mem/packet.hh')
-rw-r--r-- | src/mem/packet.hh | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/mem/packet.hh b/src/mem/packet.hh index cb97dd036..2bc51bf12 100644 --- a/src/mem/packet.hh +++ b/src/mem/packet.hh @@ -344,6 +344,13 @@ class Packet srcValid = false; } + + void toggleData() { + int icmd = (int)cmd; + icmd ^= HasData; + cmd = (Command)icmd; + } + /** * Take a request packet and modify it in place to be suitable for * returning as a response to that request. @@ -448,7 +455,6 @@ class Packet bool intersect(PacketPtr p); }; - /** This function given a functional packet and a timing packet either satisfies * the timing packet, or updates the timing packet to reflect the updated state * in the timing packet. It returns if the functional packet should continue to @@ -456,6 +462,12 @@ class Packet */ bool fixPacket(PacketPtr func, PacketPtr timing); +/** This function is a wrapper for the fixPacket field that toggles the hasData bit + * it is used when a response is waiting in the caches, but hasn't been marked as a + * response yet (so the fixPacket needs to get the correct value for the hasData) + */ +bool fixDelayedResponsePacket(PacketPtr func, PacketPtr timing); + std::ostream & operator<<(std::ostream &o, const Packet &p); #endif //__MEM_PACKET_HH |