arch,cpu,sim: Store registers in InstRecord with InstResult.
The InstResult knows how to print registers without having to know about their actual types. Change-Id: Ib858e32a7b2fabbde4857165b9e88e87294942c8 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/50254 Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Maintainer: Gabe Black <gabe.black@gmail.com>
This commit is contained in:
@@ -115,18 +115,11 @@ Trace::ExeTracerRecord::traceInst(const StaticInstPtr &inst, bool ran)
|
||||
outs << "Predicated False";
|
||||
}
|
||||
|
||||
if (debug::ExecResult && data_status != DataInvalid) {
|
||||
switch (data_status) {
|
||||
case DataVec:
|
||||
ccprintf(outs, " D=%s", *data.as_vec);
|
||||
break;
|
||||
case DataVecPred:
|
||||
ccprintf(outs, " D=%s", *data.as_pred);
|
||||
break;
|
||||
default:
|
||||
ccprintf(outs, " D=%#018x", data.as_int);
|
||||
break;
|
||||
}
|
||||
if (debug::ExecResult && dataStatus != DataInvalid) {
|
||||
if (dataStatus == DataReg)
|
||||
ccprintf(outs, " D=%s", data.asReg.asString());
|
||||
else
|
||||
ccprintf(outs, " D=%#018x", data.asInt);
|
||||
}
|
||||
|
||||
if (debug::ExecEffAddr && getMemValid())
|
||||
|
||||
Reference in New Issue
Block a user