summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGabe Black <gabeblack@google.com>2018-03-27 00:26:58 -0700
committerGabe Black <gabeblack@google.com>2018-03-27 10:57:36 +0000
commit197ae7aca7a911fb06c8e96beddfb6c5712b5561 (patch)
tree44f3890c10787feda841f062a1c5f0abf93148a8
parent979b30ec8b5d589eee4c17209733daaad75962dd (diff)
downloadgem5-197ae7aca7a911fb06c8e96beddfb6c5712b5561.tar.xz
cpu: Stop extracting inst_flags from the machInst.
The instruction representation is already encoded in the trace protobuf, so there's no reason to encode a part of it again. This is especially true since this supposedly generic code is extracting the first 8 bits of the machInst, a totally arbitrary set of bits for most ISAs. If certain bits within a machine instruction are actually relevant, the consumer of the trace should be able to interpret the instruction bytes which are already there and extract the same bits within the context of whatever ISA they're appropriate for. Change-Id: Idaebe6a110d7d4812c3d7c434582d5a9470bcec1 Reviewed-on: https://gem5-review.googlesource.com/9401 Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com> Maintainer: Gabe Black <gabeblack@google.com>
-rw-r--r--src/cpu/inst_pb_trace.cc2
-rw-r--r--src/proto/inst.proto2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/cpu/inst_pb_trace.cc b/src/cpu/inst_pb_trace.cc
index 138ef5386..4c8d2f620 100644
--- a/src/cpu/inst_pb_trace.cc
+++ b/src/cpu/inst_pb_trace.cc
@@ -160,8 +160,6 @@ InstPBTrace::traceInst(ThreadContext *tc, StaticInstPtr si, TheISA::PCState pc)
curMsg->set_cpuid(tc->cpuId());
curMsg->set_tick(curTick());
curMsg->set_type(static_cast<ProtoMessage::Inst_InstType>(si->opClass()));
- curMsg->set_inst_flags(bits(si->machInst, 7, 0));
-
}
void
diff --git a/src/proto/inst.proto b/src/proto/inst.proto
index 2a5dd9516..ef44dfe43 100644
--- a/src/proto/inst.proto
+++ b/src/proto/inst.proto
@@ -101,6 +101,8 @@ message Inst {
}
optional InstType type = 6; // add, mul, fp add, load, store, simd add, …
+
+ // Deprecated:
optional uint32 inst_flags = 7; // execution mode information
// If the operation does one or more memory accesses