diff options
author | Gabe Black <gblack@eecs.umich.edu> | 2009-07-27 00:54:24 -0700 |
---|---|---|
committer | Gabe Black <gblack@eecs.umich.edu> | 2009-07-27 00:54:24 -0700 |
commit | 90d3d3535b206fa011ab86ffc278c8851fe997a6 (patch) | |
tree | 9944394dcc38676cbe22b6633f1c35f5acf50a9e /src/arch | |
parent | 8ec235c7b189c3ae1bf13358774add595710cfd6 (diff) | |
download | gem5-90d3d3535b206fa011ab86ffc278c8851fe997a6.tar.xz |
imported patch nativetracestreamline.patch
Diffstat (limited to 'src/arch')
-rw-r--r-- | src/arch/arm/nativetrace.cc | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/arch/arm/nativetrace.cc b/src/arch/arm/nativetrace.cc index 7301653f4..469869e56 100644 --- a/src/arch/arm/nativetrace.cc +++ b/src/arch/arm/nativetrace.cc @@ -91,13 +91,17 @@ Trace::ArmNativeTrace::check(NativeTraceRecord *record) for (int i = 0; i < STATE_NUMVALS; i++) { if (nState.changed[i] || mState.changed[i]) { const char *vergence = " "; - if (mState.oldState[i] == nState.oldState[i] && - mState.newState[i] != nState.newState[i]) { + bool oldMatch = (mState.oldState[i] == nState.oldState[i]); + bool newMatch = (mState.newState[i] == nState.newState[i]); + if (oldMatch && newMatch) { + // The more things change, the more they stay the same. + continue; + } else if (oldMatch && !newMatch) { vergence = "<>"; - } else if (mState.oldState[i] != nState.oldState[i] && - mState.newState[i] == nState.newState[i]) { + } else if (!oldMatch && newMatch) { vergence = "><"; } + errorFound = true; if (!nState.changed[i]) { DPRINTF(ExecRegDelta, "%s [%5s] "\ "Native: %#010x "\ @@ -105,7 +109,6 @@ Trace::ArmNativeTrace::check(NativeTraceRecord *record) vergence, regNames[i], nState.newState[i], mState.oldState[i], mState.newState[i]); - errorFound = true; } else if (!mState.changed[i]) { DPRINTF(ExecRegDelta, "%s [%5s] "\ "Native: %#010x => %#010x "\ @@ -113,16 +116,13 @@ Trace::ArmNativeTrace::check(NativeTraceRecord *record) vergence, regNames[i], nState.oldState[i], nState.newState[i], mState.newState[i]); - errorFound = true; - } else if (mState.oldState[i] != nState.oldState[i] || - mState.newState[i] != nState.newState[i]) { + } else { DPRINTF(ExecRegDelta, "%s [%5s] "\ "Native: %#010x => %#010x "\ "M5: %#010x => %#010x\n", vergence, regNames[i], nState.oldState[i], nState.newState[i], mState.oldState[i], mState.newState[i]); - errorFound = true; } } } |