Fixed deciding and disasm of CALL in 64-bit mode (no 16-bit calls allowed)
This commit is contained in:
parent
b1bf1a8bf5
commit
4bb19c2dc3
@ -1,5 +1,5 @@
|
||||
/////////////////////////////////////////////////////////////////////////
|
||||
// $Id: fetchdecode64.cc,v 1.106 2007-03-23 14:35:50 sshwarts Exp $
|
||||
// $Id: fetchdecode64.cc,v 1.107 2007-03-28 21:20:09 sshwarts Exp $
|
||||
/////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Copyright (C) 2001 MandrakeSoft S.A.
|
||||
@ -357,7 +357,7 @@ static const BxOpcodeInfo_t BxOpcodeInfo64G5w[8] = {
|
||||
// attributes defined in main area
|
||||
/* 0 */ { BxLockable, &BX_CPU_C::INC_Ew },
|
||||
/* 1 */ { BxLockable, &BX_CPU_C::DEC_Ew },
|
||||
/* 2 */ { 0, &BX_CPU_C::CALL_Ew },
|
||||
/* 2 */ { 0, &BX_CPU_C::CALL_Eq },
|
||||
/* 3 */ { 0, &BX_CPU_C::CALL16_Ep },
|
||||
/* 4 */ { 0, &BX_CPU_C::JMP_Eq },
|
||||
/* 5 */ { 0, &BX_CPU_C::JMP16_Ep },
|
||||
|
@ -1319,6 +1319,17 @@ static BxDisasmOpcodeTable_t BxDisasmGroupG5d[8] = {
|
||||
/* 7 */ { 0, &Ia_Invalid }
|
||||
};
|
||||
|
||||
static BxDisasmOpcodeTable_t BxDisasmGroup64G5w[8] = {
|
||||
/* 0 */ { 0, &Ia_incw_Ew },
|
||||
/* 1 */ { 0, &Ia_decw_Ew },
|
||||
/* 2 */ { 0, &Ia_call_Eq },
|
||||
/* 3 */ { 0, &Ia_lcall_Mp },
|
||||
/* 4 */ { 0, &Ia_jmp_Eq },
|
||||
/* 5 */ { 0, &Ia_ljmp_Mp },
|
||||
/* 6 */ { 0, &Ia_pushw_Ew },
|
||||
/* 7 */ { 0, &Ia_Invalid }
|
||||
};
|
||||
|
||||
static BxDisasmOpcodeTable_t BxDisasmGroup64G5d[8] = {
|
||||
/* 0 */ { 0, &Ia_incl_Ed },
|
||||
/* 1 */ { 0, &Ia_decl_Ed },
|
||||
@ -3853,7 +3864,7 @@ static BxDisasmOpcodeTable_t BxDisasmOpcodes64w[256*2] = {
|
||||
/* FC */ { 0, &Ia_cld },
|
||||
/* FD */ { 0, &Ia_std },
|
||||
/* FE */ { GRPN(G4) },
|
||||
/* FF */ { GRPN(G5w) },
|
||||
/* FF */ { GRPN(64G5w) },
|
||||
|
||||
// 256 entries for two byte opcodes
|
||||
/* 0F 00 */ { GRPN(G6) },
|
||||
|
Loading…
Reference in New Issue
Block a user