add fsr to the list of registers we are interested in
--HG-- extra : convert_revision : 2cc0d0144abab264aa0ec8c07242cdab2dffd4f8
This commit is contained in:
parent
fc79ace502
commit
ac36fb6e64
2 changed files with 12 additions and 3 deletions
|
@ -307,6 +307,7 @@ Trace::InstRecord::dump(ostream &outs)
|
||||||
bool diffHtba = false;
|
bool diffHtba = false;
|
||||||
bool diffPstate = false;
|
bool diffPstate = false;
|
||||||
bool diffY = false;
|
bool diffY = false;
|
||||||
|
bool diffFsr = false;
|
||||||
bool diffCcr = false;
|
bool diffCcr = false;
|
||||||
bool diffTl = false;
|
bool diffTl = false;
|
||||||
bool diffGl = false;
|
bool diffGl = false;
|
||||||
|
@ -410,6 +411,8 @@ Trace::InstRecord::dump(ostream &outs)
|
||||||
if(shared_data->y !=
|
if(shared_data->y !=
|
||||||
thread->readIntReg(NumIntArchRegs + 1))
|
thread->readIntReg(NumIntArchRegs + 1))
|
||||||
diffY = true;
|
diffY = true;
|
||||||
|
if(shared_data->fsr != thread->readMiscReg(MISCREG_FSR))
|
||||||
|
diffFsr = true;
|
||||||
//if(shared_data->ccr != thread->readMiscReg(MISCREG_CCR))
|
//if(shared_data->ccr != thread->readMiscReg(MISCREG_CCR))
|
||||||
if(shared_data->ccr !=
|
if(shared_data->ccr !=
|
||||||
thread->readIntReg(NumIntArchRegs + 2))
|
thread->readIntReg(NumIntArchRegs + 2))
|
||||||
|
@ -450,8 +453,8 @@ Trace::InstRecord::dump(ostream &outs)
|
||||||
if ((diffPC || diffCC || diffInst || diffIntRegs ||
|
if ((diffPC || diffCC || diffInst || diffIntRegs ||
|
||||||
diffFpRegs || diffTpc || diffTnpc || diffTstate ||
|
diffFpRegs || diffTpc || diffTnpc || diffTstate ||
|
||||||
diffTt || diffHpstate || diffHtstate || diffHtba ||
|
diffTt || diffHpstate || diffHtstate || diffHtba ||
|
||||||
diffPstate || diffY || diffCcr || diffTl || diffGl ||
|
diffPstate || diffY || diffCcr || diffTl || diffFsr ||
|
||||||
diffAsi || diffPil || diffCwp || diffCansave ||
|
diffGl || diffAsi || diffPil || diffCwp || diffCansave ||
|
||||||
diffCanrestore || diffOtherwin || diffCleanwin || diffTlb)
|
diffCanrestore || diffOtherwin || diffCleanwin || diffTlb)
|
||||||
&& !((staticInst->machInst & 0xC1F80000) == 0x81D00000)
|
&& !((staticInst->machInst & 0xC1F80000) == 0x81D00000)
|
||||||
&& !(((staticInst->machInst & 0xC0000000) == 0xC0000000)
|
&& !(((staticInst->machInst & 0xC0000000) == 0xC0000000)
|
||||||
|
@ -487,6 +490,8 @@ Trace::InstRecord::dump(ostream &outs)
|
||||||
outs << " [Pstate]";
|
outs << " [Pstate]";
|
||||||
if (diffY)
|
if (diffY)
|
||||||
outs << " [Y]";
|
outs << " [Y]";
|
||||||
|
if (diffFsr)
|
||||||
|
outs << " [FSR]";
|
||||||
if (diffCcr)
|
if (diffCcr)
|
||||||
outs << " [Ccr]";
|
outs << " [Ccr]";
|
||||||
if (diffTl)
|
if (diffTl)
|
||||||
|
@ -556,6 +561,9 @@ Trace::InstRecord::dump(ostream &outs)
|
||||||
//thread->readMiscReg(MISCREG_Y),
|
//thread->readMiscReg(MISCREG_Y),
|
||||||
thread->readIntReg(NumIntArchRegs + 1),
|
thread->readIntReg(NumIntArchRegs + 1),
|
||||||
shared_data->y);
|
shared_data->y);
|
||||||
|
printRegPair(outs, "FSR",
|
||||||
|
thread->readMiscReg(MISCREG_FSR),
|
||||||
|
shared_data->fsr);
|
||||||
printRegPair(outs, "Ccr",
|
printRegPair(outs, "Ccr",
|
||||||
//thread->readMiscReg(MISCREG_CCR),
|
//thread->readMiscReg(MISCREG_CCR),
|
||||||
thread->readIntReg(NumIntArchRegs + 2),
|
thread->readIntReg(NumIntArchRegs + 2),
|
||||||
|
|
|
@ -30,7 +30,7 @@
|
||||||
|
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
|
||||||
#define VERSION 0xA1000008
|
#define VERSION 0xA1000009
|
||||||
#define OWN_M5 0x000000AA
|
#define OWN_M5 0x000000AA
|
||||||
#define OWN_LEGION 0x00000055
|
#define OWN_LEGION 0x00000055
|
||||||
|
|
||||||
|
@ -61,6 +61,7 @@ typedef struct {
|
||||||
uint16_t pstate;
|
uint16_t pstate;
|
||||||
|
|
||||||
uint64_t y;
|
uint64_t y;
|
||||||
|
uint64_t fsr;
|
||||||
uint8_t ccr;
|
uint8_t ccr;
|
||||||
uint8_t tl;
|
uint8_t tl;
|
||||||
uint8_t gl;
|
uint8_t gl;
|
||||||
|
|
Loading…
Reference in a new issue