diff options
author | Ali Saidi <saidi@eecs.umich.edu> | 2006-04-28 15:41:22 -0400 |
---|---|---|
committer | Ali Saidi <saidi@eecs.umich.edu> | 2006-04-28 15:41:22 -0400 |
commit | ca8a659394e96a0a0c11693cbaae59e6b027795a (patch) | |
tree | 79f9509a48359bbc870ae34ce8b6e2fc6bc027de /mem/packet.hh | |
parent | 7bb70e3e30f30c669e475c47b950f0abd24367d0 (diff) | |
parent | b43d1a00fb69015c751fba57d22a6fa94a292f04 (diff) | |
download | gem5-ca8a659394e96a0a0c11693cbaae59e6b027795a.tar.xz |
Merge zizzer:/bk/newmem
into zeep.pool:/z/saidi/work/m5.newmem
--HG--
extra : convert_revision : d6f7c4dd146613eeba39249f2d916a77108bc8c1
Diffstat (limited to 'mem/packet.hh')
-rw-r--r-- | mem/packet.hh | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/mem/packet.hh b/mem/packet.hh index 4329094d5..a5bd6bc59 100644 --- a/mem/packet.hh +++ b/mem/packet.hh @@ -142,7 +142,7 @@ struct Packet Packet() : data(NULL), staticData(false), dynamicData(false), arrayData(false), - result(Unknown) + time(curTick), result(Unknown) {} ~Packet() @@ -156,6 +156,7 @@ struct Packet deleteData(); dynamicData = false; arrayData = false; + time = curTick; } } @@ -231,6 +232,21 @@ struct Packet arrayData = true; data = new uint8_t[size]; } + + /** Do the packet modify the same addresses. */ + bool intersect(Packet *p) { + Addr s1 = addr; + Addr e1 = addr + size; + Addr s2 = p->addr; + Addr e2 = p->addr + p->size; + + if (s1 >= s2 && s1 < e2) + return true; + if (e1 >= s2 && e1 < e2) + return true; + return false; + } }; +bool fixPacket(Packet &func, Packet &timing); #endif //__MEM_PACKET_HH |