summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAli Saidi <saidi@eecs.umich.edu>2007-01-29 19:03:14 -0500
committerAli Saidi <saidi@eecs.umich.edu>2007-01-29 19:03:14 -0500
commit716a2dc180396cefac082dedfa120350250dec48 (patch)
tree8fc67ca90839647691252a5ec76ddbcd863f5596 /src
parentb39190cb3a01d848b3d70f5989dd63ec2232db1a (diff)
downloadgem5-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')
-rw-r--r--src/cpu/exetrace.cc17
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++) {