changeset 24c0a4639d17 in /z/repo/m5
details: http://repo.m5sim.org/m5?cmd=changeset;node=24c0a4639d17
description:
X86: Don't treat the REX prefixes as prefixes in 32 bit modes. These
are inc/dec instructions.
diffstat:
1 file changed, 4 insertions(+), 1 deletion(-)
src/arch/x86/predecoder.cc | 5 ++++-
diffs (15 lines):
diff -r 9ed073dd5214 -r 24c0a4639d17 src/arch/x86/predecoder.cc
--- a/src/arch/x86/predecoder.cc Fri Feb 27 09:26:01 2009 -0800
+++ b/src/arch/x86/predecoder.cc Fri Feb 27 09:26:09 2009 -0800
@@ -136,7 +136,10 @@
{
uint8_t prefix = Prefixes[nextByte];
State nextState = PrefixState;
- if(prefix)
+ // REX prefixes are only recognized in 64 bit mode.
+ if (prefix == RexPrefix && emi.mode.submode != SixtyFourBitMode)
+ prefix = 0;
+ if (prefix)
consumeByte();
switch(prefix)
{
_______________________________________________
m5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/m5-dev