diff options
author | Ali Saidi <saidi@eecs.umich.edu> | 2007-01-29 19:03:14 -0500 |
---|---|---|
committer | Ali Saidi <saidi@eecs.umich.edu> | 2007-01-29 19:03:14 -0500 |
commit | 716a2dc180396cefac082dedfa120350250dec48 (patch) | |
tree | 8fc67ca90839647691252a5ec76ddbcd863f5596 /src/cpu | |
parent | b39190cb3a01d848b3d70f5989dd63ec2232db1a (diff) | |
download | gem5-716a2dc180396cefac082dedfa120350250dec48.tar.xz |
fix some over sights in moving windowing and ccr registers to int reg file
--HG--
extra : convert_revision : 4e83e5163076aeef72ec5caf1e0d7adea11da875
Diffstat (limited to 'src/cpu')
-rw-r--r-- | src/cpu/exetrace.cc | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/cpu/exetrace.cc b/src/cpu/exetrace.cc index 4f589d5f7..85b08ee32 100644 --- a/src/cpu/exetrace.cc +++ b/src/cpu/exetrace.cc @@ -358,7 +358,8 @@ Trace::InstRecord::dump(ostream &outs) (SparcISA::MachInst)staticInst->machInst) { diffInst = true; } - for (int i = 0; i < TheISA::NumIntArchRegs; i++) { + // assume we have %g0 working correctly + for (int i = 1; i < TheISA::NumIntArchRegs; i++) { if (thread->readIntReg(i) != shared_data->intregs[i]) { diffIntRegs = true; } @@ -428,15 +429,15 @@ Trace::InstRecord::dump(ostream &outs) //if(shared_data->canrestore != // thread->readMiscReg(MISCREG_CANRESTORE)) if(shared_data->canrestore != - thread->readMiscReg(NumIntArchRegs + 4)) + thread->readIntReg(NumIntArchRegs + 4)) diffCanrestore = true; //if(shared_data->otherwin != thread->readMiscReg(MISCREG_OTHERWIN)) if(shared_data->otherwin != - thread->readIntReg(NumIntArchRegs + 5)) + thread->readIntReg(NumIntArchRegs + 6)) diffOtherwin = true; //if(shared_data->cleanwin != thread->readMiscReg(MISCREG_CLEANWIN)) if(shared_data->cleanwin != - thread->readMiscReg(NumIntArchRegs + 6)) + thread->readIntReg(NumIntArchRegs + 5)) diffCleanwin = true; for (int i = 0; i < 64; i++) { @@ -553,11 +554,11 @@ Trace::InstRecord::dump(ostream &outs) shared_data->pstate); printRegPair(outs, "Y", //thread->readMiscReg(MISCREG_Y), - thread->readMiscReg(NumIntArchRegs + 1), + thread->readIntReg(NumIntArchRegs + 1), shared_data->y); printRegPair(outs, "Ccr", //thread->readMiscReg(MISCREG_CCR), - thread->readMiscReg(NumIntArchRegs + 2), + thread->readIntReg(NumIntArchRegs + 2), shared_data->ccr); printRegPair(outs, "Tl", thread->readMiscReg(MISCREG_TL), @@ -584,11 +585,11 @@ Trace::InstRecord::dump(ostream &outs) shared_data->canrestore); printRegPair(outs, "Otherwin", //thread->readMiscReg(MISCREG_OTHERWIN), - thread->readIntReg(NumIntArchRegs + 5), + thread->readIntReg(NumIntArchRegs + 6), shared_data->otherwin); printRegPair(outs, "Cleanwin", //thread->readMiscReg(MISCREG_CLEANWIN), - thread->readIntReg(NumIntArchRegs + 6), + thread->readIntReg(NumIntArchRegs + 5), shared_data->cleanwin); outs << endl; for (int i = 1; i <= MaxTL; i++) { |