nativetrace.cc (8303:5a95f1d2494e) | nativetrace.cc (8641:4d3ecac1abec) |
---|---|
1/* 2 * Copyright (c) 2010 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 142 unchanged lines hidden (view full) --- 151 nState.update(this); 152 153 } 154 155 bool errorFound = false; 156 // Regular int regs 157 for (int i = 0; i < STATE_NUMVALS; i++) { 158 if (nState.changed[i] || mState.changed[i]) { | 1/* 2 * Copyright (c) 2010 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 142 unchanged lines hidden (view full) --- 151 nState.update(this); 152 153 } 154 155 bool errorFound = false; 156 // Regular int regs 157 for (int i = 0; i < STATE_NUMVALS; i++) { 158 if (nState.changed[i] || mState.changed[i]) { |
159 const char *vergence = " "; | |
160 bool oldMatch = (mState.oldState[i] == nState.oldState[i]); 161 bool newMatch = (mState.newState[i] == nState.newState[i]); 162 if (oldMatch && newMatch) { 163 // The more things change, the more they stay the same. 164 continue; | 159 bool oldMatch = (mState.oldState[i] == nState.oldState[i]); 160 bool newMatch = (mState.newState[i] == nState.newState[i]); 161 if (oldMatch && newMatch) { 162 // The more things change, the more they stay the same. 163 continue; |
165 } else if (oldMatch && !newMatch) { | 164 } 165 166 errorFound = true; 167 168#ifndef NDEBUG 169 const char *vergence = " "; 170 if (oldMatch && !newMatch) { |
166 vergence = "<>"; 167 } else if (!oldMatch && newMatch) { 168 vergence = "><"; 169 } | 171 vergence = "<>"; 172 } else if (!oldMatch && newMatch) { 173 vergence = "><"; 174 } |
170 errorFound = true; | 175 |
171 if (!nState.changed[i]) { 172 DPRINTF(ExecRegDelta, "%s [%5s] "\ 173 "Native: %#010x "\ 174 "M5: %#010x => %#010x\n", 175 vergence, regNames[i], 176 nState.newState[i], 177 mState.oldState[i], mState.newState[i]); 178 } else if (!mState.changed[i]) { --- 6 unchanged lines hidden (view full) --- 185 } else { 186 DPRINTF(ExecRegDelta, "%s [%5s] "\ 187 "Native: %#010x => %#010x "\ 188 "M5: %#010x => %#010x\n", 189 vergence, regNames[i], 190 nState.oldState[i], nState.newState[i], 191 mState.oldState[i], mState.newState[i]); 192 } | 176 if (!nState.changed[i]) { 177 DPRINTF(ExecRegDelta, "%s [%5s] "\ 178 "Native: %#010x "\ 179 "M5: %#010x => %#010x\n", 180 vergence, regNames[i], 181 nState.newState[i], 182 mState.oldState[i], mState.newState[i]); 183 } else if (!mState.changed[i]) { --- 6 unchanged lines hidden (view full) --- 190 } else { 191 DPRINTF(ExecRegDelta, "%s [%5s] "\ 192 "Native: %#010x => %#010x "\ 193 "M5: %#010x => %#010x\n", 194 vergence, regNames[i], 195 nState.oldState[i], nState.newState[i], 196 mState.oldState[i], mState.newState[i]); 197 } |
198#endif |
|
193 } 194 } 195 if (errorFound) { 196 StaticInstPtr inst = record->getStaticInst(); 197 assert(inst); 198 bool ran = true; 199 if (inst->isMicroop()) { 200 ran = false; --- 23 unchanged lines hidden --- | 199 } 200 } 201 if (errorFound) { 202 StaticInstPtr inst = record->getStaticInst(); 203 assert(inst); 204 bool ran = true; 205 if (inst->isMicroop()) { 206 ran = false; --- 23 unchanged lines hidden --- |