cpu: Proposed fix for backwards compatibility in proto/inst.proto.
authorGabe Black <gabeblack@google.com>
Sat, 24 Mar 2018 01:11:12 +0000 (18:11 -0700)
committerGabe Black <gabeblack@google.com>
Mon, 26 Mar 2018 22:35:26 +0000 (22:35 +0000)
I haven't tested this at all, but this may fix backwards compatibility
in inst.proto by removing the oneof construct.

Change-Id: Iba19744791c2c577c3b442402f8cc6dcef8550bd
Reviewed-on: https://gem5-review.googlesource.com/9361
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Maintainer: Gabe Black <gabeblack@google.com>

src/proto/inst.proto

index d561661f16e17c271436ea71341060c8836a8029..2a5dd9516caffc20f06d5b55b11eea07c2e5d0c0 100644 (file)
@@ -52,10 +52,13 @@ message InstHeader {
 
 message Inst {
   required uint64 pc = 1;
-  oneof inst_oneof {
-    fixed32 inst = 2;
-    bytes inst_bytes = 9;
-  }
+
+  // Either inst or inst_bytes must be used, but never both. That should be
+  // enforced by the oneof keyword, but that's not supported in all versions
+  // of protobuf syntax we need to work with for now.
+  optional fixed32 inst = 2;
+  optional bytes inst_bytes = 9;
+
   optional uint32 nodeid = 3;
   optional uint32 cpuid = 4;
   optional fixed64 tick = 5;