Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/newmem
[gem5.git] / src / mem / cache / tags / split_lifo.hh
index 52956b192dcb9c4e3974592a4e7c76c81c73b623..0f8adf18d344987879e93c7b1dd3998f0ffdd16b 100644 (file)
@@ -36,6 +36,7 @@
 #ifndef __SPLIT_LIFO_HH__
 #define __SPLIT_LIFO_HH__
 
+#include <cstring>
 #include <list>
 
 #include "mem/cache/cache_blk.hh" // base class
@@ -73,7 +74,7 @@ class LIFOSet {
      * @param tag the Tag you are looking for
      * @return Pointer to the block, if found, NULL otherwise
      */
-    SplitBlk* findBlk(int asid, Addr tag) const;
+    SplitBlk* findBlk(Addr tag) const;
 
     void moveToLastIn(SplitBlk *blk);
     void moveToFirstIn(SplitBlk *blk);
@@ -181,14 +182,13 @@ public:
      * @param addr The address to find.
      * @return True if the address is in the cache.
      */
-    bool probe(int asid, Addr addr) const;
+    bool probe( Addr addr) const;
 
     /**
-     * Invalidate the block containing the given address.
-     * @param asid The address space ID.
-     * @param addr The address to invalidate.
+     * Invalidate the given block.
+     * @param blk The block to invalidate.
      */
-    void invalidateBlk(int asid, Addr addr);
+    void invalidateBlk(BlkType *blk);
 
     /**
      * Finds the given address in the cache and update replacement data.
@@ -198,16 +198,7 @@ public:
      * @param lat The access latency.
      * @return Pointer to the cache block if found.
      */
-    SplitBlk* findBlock(Addr addr, int asid, int &lat);
-
-    /**
-     * Finds the given address in the cache and update replacement data.
-     * Returns the access latency as a side effect.
-     * @param pkt The req whose block to find
-     * @param lat The access latency.
-     * @return Pointer to the cache block if found.
-     */
-    SplitBlk* findBlock(Packet * &pkt, int &lat);
+    SplitBlk* findBlock(Addr addr, int &lat);
 
     /**
      * Finds the given address in the cache, do not update replacement data.
@@ -215,7 +206,7 @@ public:
      * @param asid The address space ID.
      * @return Pointer to the cache block if found.
      */
-    SplitBlk* findBlock(Addr addr, int asid) const;
+    SplitBlk* findBlock(Addr addr) const;
 
     /**
      * Find a replacement block for the address provided.
@@ -224,7 +215,7 @@ public:
      * @param compress_blocks List of blocks to compress, for adaptive comp.
      * @return The block to place the replacement in.
      */
-    SplitBlk* findReplacement(Packet * &pkt, PacketList &writebacks,
+    SplitBlk* findReplacement(PacketPtr &pkt, PacketList &writebacks,
                             BlkList &compress_blocks);
 
     /**
@@ -306,7 +297,7 @@ public:
      */
     void readData(SplitBlk *blk, uint8_t *data)
     {
-        memcpy(data, blk->data, blk->size);
+        std::memcpy(data, blk->data, blk->size);
     }
 
     /**
@@ -325,22 +316,6 @@ public:
         blk->size = size;
     }
 
-    /**
-     * Perform a block aligned copy from the source address to the destination.
-     * @param source The block-aligned source address.
-     * @param dest The block-aligned destination address.
-     * @param asid The address space DI.
-     * @param writebacks List for any generated writeback pktuests.
-     */
-    void doCopy(Addr source, Addr dest, int asid, PacketList &writebacks);
-
-    /**
-     * No impl.
-     */
-    void fixCopy(Packet * &pkt, PacketList &writebacks)
-    {
-    }
-
     /**
      * Called at end of simulation to complete average block reference stats.
      */