From 8e71a8654262ff0ec88d8859202633e1ebd55630 Mon Sep 17 00:00:00 2001 From: Stanislav Shwartsman Date: Wed, 18 Sep 2013 18:01:48 +0000 Subject: [PATCH] seve vex prefix value to the indication of vex prefix used --- bochs/cpu/fetchdecode.cc | 6 +++--- bochs/cpu/fetchdecode64.cc | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/bochs/cpu/fetchdecode.cc b/bochs/cpu/fetchdecode.cc index c518775cc..3324895dc 100644 --- a/bochs/cpu/fetchdecode.cc +++ b/bochs/cpu/fetchdecode.cc @@ -1368,7 +1368,7 @@ fetch_b1: #if BX_SUPPORT_AVX if ((b1 & ~0x1) == 0xc4 && (*iptr & 0xc0) == 0xc0) { // VEX 0xC4 and VEX 0xC5 - had_vex_xop = 1; + had_vex_xop = b1; if (sse_prefix || ! protected_mode()) goto decode_done; @@ -1414,7 +1414,7 @@ fetch_b1: } #if BX_SUPPORT_EVEX else if (b1 == 0x62 && (*iptr & 0xc0) == 0xc0) { - had_vex_xop = 1; + had_vex_xop = b1; if (sse_prefix || ! protected_mode()) goto decode_done; @@ -1463,7 +1463,7 @@ fetch_b1: #endif else if (b1 == 0x8f && (*iptr & 0xc8) == 0xc8) { // 3 byte XOP prefix - had_vex_xop = 1; + had_vex_xop = b1; if (sse_prefix || ! protected_mode()) goto decode_done; diff --git a/bochs/cpu/fetchdecode64.cc b/bochs/cpu/fetchdecode64.cc index fcd57dd23..12d1f009c 100644 --- a/bochs/cpu/fetchdecode64.cc +++ b/bochs/cpu/fetchdecode64.cc @@ -1829,7 +1829,7 @@ fetch_b1: #if BX_SUPPORT_AVX if ((b1 & ~0x1) == 0xc4) { // VEX - had_vex_xop = 1; + had_vex_xop = b1; if (sse_prefix | rex_prefix) goto decode_done; @@ -1884,7 +1884,7 @@ fetch_b1: } #if BX_SUPPORT_EVEX else if (b1 == 0x62) { - had_vex_xop = 1; + had_vex_xop = b1; if (sse_prefix || ! protected_mode()) goto decode_done; @@ -1928,7 +1928,7 @@ fetch_b1: #endif else if (b1 == 0x8f && (*iptr & 0x08) == 0x08) { // 3 byte XOP prefix - had_vex_xop = 1; + had_vex_xop = b1; if (sse_prefix | rex_prefix) goto decode_done;