Gabe Black has uploaded this change for review. (
https://gem5-review.googlesource.com/5281
Change subject: x86: Fix VEX instruction decoding.
......................................................................
x86: Fix VEX instruction decoding.
When decoding VEX prefixed instructions, the x86 predecoder wasn't walking
past the opcode byte and so was also interpreting it as the modRM byte.
Change-Id: I6d4bdabfa03411704c48d905c50c7b23072fc615
---
M src/arch/x86/decoder.cc
1 file changed, 1 insertion(+), 0 deletions(-)
diff --git a/src/arch/x86/decoder.cc b/src/arch/x86/decoder.cc
index 930c2b9..9c4997d 100644
--- a/src/arch/x86/decoder.cc
+++ b/src/arch/x86/decoder.cc
@@ -355,6 +355,7 @@
DPRINTF(Decoder, "Found VEX opcode %#x.\n", nextByte);
emi.opcode.op = nextByte;
+ consumeByte();
switch (emi.opcode.type) {
case TwoByteOpcode:
--
To view, visit https://gem5-review.googlesource.com/5281
To unsubscribe, or for help writing mail filters, visit
https://gem5-review.googlesource.com/settings
Gerrit-Project: public/gem5
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I6d4bdabfa03411704c48d905c50c7b23072fc615
Gerrit-Change-Number: 5281
Gerrit-PatchSet: 1
Gerrit-Owner: Gabe Black <gabebl...@google.com>
_______________________________________________
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev