changeset 34e658a2c4c0 in /z/repo/m5
details: http://repo.m5sim.org/m5?cmd=changeset;node=34e658a2c4c0
description:
        SPARC: Get rid of the state keeping track of register frames.

diffstat:

2 files changed, 78 deletions(-)
src/arch/sparc/intregfile.cc |   47 ------------------------------------------
src/arch/sparc/intregfile.hh |   31 ---------------------------

diffs (138 lines):

diff -r 60d926a40afd -r 34e658a2c4c0 src/arch/sparc/intregfile.cc
--- a/src/arch/sparc/intregfile.cc      Wed Feb 25 10:22:17 2009 -0800
+++ b/src/arch/sparc/intregfile.cc      Wed Feb 25 10:22:25 2009 -0800
@@ -53,18 +53,11 @@
 
 void IntRegFile::clear()
 {
-    int x;
-    for (x = 0; x < MaxGL; x++)
-        memset(regGlobals[x], 0, sizeof(IntReg) * RegsPerFrame);
-    for(int x = 0; x < 2 * NWindows; x++)
-        memset(regSegments[x], 0, sizeof(IntReg) * RegsPerFrame);
     memset(regs, 0, sizeof(IntReg) * NumIntRegs);
 }
 
 IntRegFile::IntRegFile()
 {
-    offset[Globals] = 0;
-    regView[Globals] = regGlobals[0];
     clear();
 }
 
@@ -72,20 +65,6 @@
 {
     DPRINTF(IntRegs, "Read register %d = 0x%x\n", intReg, regs[intReg]);
     return regs[intReg];
-    /* XXX Currently not used. When used again regView/offset need to be
-     * serialized!
-    IntReg val;
-    if(intReg < NumIntArchRegs)
-        val = regView[intReg >> FrameOffsetBits][intReg & FrameOffsetMask];
-    else if((intReg -= NumIntArchRegs) < NumMicroIntRegs)
-        val = microRegs[intReg];
-    else
-        panic("Tried to read non-existant integer register %d, %d\n",
-                NumIntArchRegs + NumMicroIntRegs + intReg, intReg);
-
-    DPRINTF(IntRegs, "Read register %d = 0x%x\n", intReg, val);
-    return val;
-    */
 }
 
 void IntRegFile::setReg(int intReg, const IntReg &val)
@@ -96,42 +75,16 @@
         regs[intReg] = val;
     }
     return;
-    /* XXX Currently not used. When used again regView/offset need to be
-     * serialized!
-    if(intReg)
-    {
-        DPRINTF(IntRegs, "Wrote register %d = 0x%x\n", intReg, val);
-        if(intReg < NumIntArchRegs)
-            regView[intReg >> FrameOffsetBits][intReg & FrameOffsetMask] = val;
-        else if((intReg -= NumIntArchRegs) < NumMicroIntRegs)
-            microRegs[intReg] = val;
-        else
-            panic("Tried to set non-existant integer register\n");
-    } */
 }
 
 void IntRegFile::serialize(std::ostream &os)
 {
     SERIALIZE_ARRAY(regs, NumIntRegs);
     SERIALIZE_ARRAY(microRegs, NumMicroIntRegs);
-
-    /* the below doesn't seem needed unless gabe makes regview work*/
-    unsigned int x;
-    for(x = 0; x < MaxGL; x++)
-        SERIALIZE_ARRAY(regGlobals[x], RegsPerFrame);
-    for(x = 0; x < 2 * NWindows; x++)
-        SERIALIZE_ARRAY(regSegments[x], RegsPerFrame);
 }
 
 void IntRegFile::unserialize(Checkpoint *cp, const std::string &section)
 {
     UNSERIALIZE_ARRAY(regs, NumIntRegs);
     UNSERIALIZE_ARRAY(microRegs, NumMicroIntRegs);
-
-    /* the below doesn't seem needed unless gabe makes regview work*/
-    unsigned int x;
-    for(x = 0; x < MaxGL; x++)
-        UNSERIALIZE_ARRAY(regGlobals[x], RegsPerFrame);
-    for(unsigned int x = 0; x < 2 * NWindows; x++)
-        UNSERIALIZE_ARRAY(regSegments[x], RegsPerFrame);
 }
diff -r 60d926a40afd -r 34e658a2c4c0 src/arch/sparc/intregfile.hh
--- a/src/arch/sparc/intregfile.hh      Wed Feb 25 10:22:17 2009 -0800
+++ b/src/arch/sparc/intregfile.hh      Wed Feb 25 10:22:25 2009 -0800
@@ -42,8 +42,6 @@
 
 namespace SparcISA
 {
-    class RegFile;
-
     //This function translates integer register file indices into names
     std::string getIntRegName(RegIndex);
 
@@ -52,39 +50,10 @@
 
     class IntRegFile
     {
-      private:
-        friend class RegFile;
       protected:
-        //The number of bits needed to index into each 8 register frame
-        static const int FrameOffsetBits = 3;
-        //The number of bits to choose between the 4 sets of 8 registers
-        static const int FrameNumBits = 2;
-
-        //The number of registers per "frame" (8)
-        static const int RegsPerFrame = 1 << FrameOffsetBits;
-        //A mask to get the frame number
-        static const uint64_t FrameNumMask =
-                (FrameNumBits == sizeof(int)) ?
-                (unsigned int)(-1) :
-                (1 << FrameNumBits) - 1;
-        static const uint64_t FrameOffsetMask =
-                (FrameOffsetBits == sizeof(int)) ?
-                (unsigned int)(-1) :
-                (1 << FrameOffsetBits) - 1;
-
-        IntReg regGlobals[MaxGL+1][RegsPerFrame];
-        IntReg regSegments[2 * NWindows][RegsPerFrame];
         IntReg microRegs[NumMicroIntRegs];
         IntReg regs[NumIntRegs];
 
-        enum regFrame {Globals, Outputs, Locals, Inputs, NumFrames};
-
-        IntReg * regView[NumFrames];
-
-        static const int RegGlobalOffset = 0;
-        static const int FrameOffset = (MaxGL + 1) * RegsPerFrame;
-        int offset[NumFrames];
-
       public:
 
         void clear();
_______________________________________________
m5-dev mailing list
m5-dev@m5sim.org
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to