cpu: Stop extracting inst_flags from the machInst.
authorGabe Black <gabeblack@google.com>
Tue, 27 Mar 2018 07:26:58 +0000 (00:26 -0700)
committerGabe Black <gabeblack@google.com>
Tue, 27 Mar 2018 10:57:36 +0000 (10:57 +0000)
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>

src/cpu/inst_pb_trace.cc
src/proto/inst.proto

index 138ef5386926846b5506f400e52af526728ce376..4c8d2f6207ad7906d806ab4756ab2879aaaedce9 100644 (file)
@@ -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
index 2a5dd9516caffc20f06d5b55b11eea07c2e5d0c0..ef44dfe43c7ad3bef20cbd0bf296f969fd1e5843 100644 (file)
@@ -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