summaryrefslogtreecommitdiff
path: root/src/mem/packet.hh
diff options
context:
space:
mode:
authorRon Dreslinski <rdreslin@umich.edu>2006-06-30 10:25:25 -0400
committerRon Dreslinski <rdreslin@umich.edu>2006-06-30 10:25:25 -0400
commit335fa4bde33f60bf61dceb04eb61aeade5cee76c (patch)
treeb6c498b7a30685110d14fc065c0689532090a7c8 /src/mem/packet.hh
parenteafb5c4936f7d3233c223d69b435c6be360bbfb2 (diff)
downloadgem5-335fa4bde33f60bf61dceb04eb61aeade5cee76c.tar.xz
All files compile in the mem directory except cache_builder
Missing some functionality (like split caches and copy support) src/SConscript: Typo src/mem/cache/prefetch/base_prefetcher.cc: src/mem/cache/prefetch/ghb_prefetcher.hh: src/mem/cache/prefetch/stride_prefetcher.hh: src/mem/cache/prefetch/tagged_prefetcher_impl.hh: src/mem/cache/tags/fa_lru.cc: src/mem/cache/tags/fa_lru.hh: src/mem/cache/tags/iic.cc: src/mem/cache/tags/iic.hh: src/mem/cache/tags/lru.cc: src/mem/cache/tags/lru.hh: src/mem/cache/tags/split.cc: src/mem/cache/tags/split.hh: src/mem/cache/tags/split_lifo.cc: src/mem/cache/tags/split_lifo.hh: src/mem/cache/tags/split_lru.cc: src/mem/cache/tags/split_lru.hh: src/mem/packet.hh: src/mem/request.hh: Fix so it compiles --HG-- extra : convert_revision : 0d87d84f6e9445bab655c0cb0f8541bbf6eab904
Diffstat (limited to 'src/mem/packet.hh')
-rw-r--r--src/mem/packet.hh16
1 files changed, 7 insertions, 9 deletions
diff --git a/src/mem/packet.hh b/src/mem/packet.hh
index 0369745c9..2b97ab0c1 100644
--- a/src/mem/packet.hh
+++ b/src/mem/packet.hh
@@ -100,9 +100,6 @@ class Packet
/** The size of the request or transfer. */
int size;
- /** The offset within the block that represents the data. */
- int offset;
-
/** Device address (e.g., bus ID) of the source of the
* transaction. The source is not responsible for setting this
* field; it is set implicitly by the interconnect when the
@@ -120,8 +117,6 @@ class Packet
bool addrSizeValid;
/** Is the 'src' field valid? */
bool srcValid;
- /** Is the offset valid. */
- bool offsetValid;
public:
@@ -225,6 +220,9 @@ class Packet
bool isCacheFill() { return (flags & CACHE_LINE_FILL) != 0; }
bool isNoAllocate() { return (flags & NO_ALLOCATE) != 0; }
+ bool isCompressed() { return (flags & COMPRESSED) != 0; }
+
+ bool nic_pkt() { assert("Unimplemented\n" && 0); }
/** Possible results of a packet's request. */
enum Result
@@ -249,7 +247,7 @@ class Packet
Addr getAddr() const { assert(addrSizeValid); return addr; }
int getSize() const { assert(addrSizeValid); return size; }
- int getOffset() const { assert(offsetValid); return offset; }
+ Addr getOffset(int blkSize) const { return req->getPaddr() & (Addr)(blkSize - 1); }
void addrOverride(Addr newAddr) { assert(addrSizeValid); addr = newAddr; }
void cmdOverride(Command newCmd) { cmd = newCmd; }
@@ -262,7 +260,7 @@ class Packet
: data(NULL), staticData(false), dynamicData(false), arrayData(false),
addr(_req->paddr), size(_req->size), dest(_dest),
addrSizeValid(_req->validPaddr),
- srcValid(false), offsetValid(false),
+ srcValid(false),
req(_req), coherence(NULL), senderState(NULL), cmd(_cmd),
result(Unknown)
{
@@ -275,8 +273,8 @@ class Packet
Packet(Request *_req, Command _cmd, short _dest, int _blkSize)
: data(NULL), staticData(false), dynamicData(false), arrayData(false),
addr(_req->paddr & ~(_blkSize - 1)), size(_blkSize),
- offset(_req->paddr & (_blkSize - 1)), dest(_dest),
- addrSizeValid(_req->validPaddr), srcValid(false), offsetValid(true),
+ dest(_dest),
+ addrSizeValid(_req->validPaddr), srcValid(false),
req(_req), coherence(NULL), senderState(NULL), cmd(_cmd),
result(Unknown)
{