ft(interpreter): impl short jumps
This commit is contained in:
@@ -136,27 +136,27 @@ pub enum Mnemonic {
|
||||
// DEC
|
||||
DEC_Reg(Register),
|
||||
DEC_Mod(ModRmTarget),
|
||||
// Jumps
|
||||
JO(isize),
|
||||
JNO(isize),
|
||||
JB(isize),
|
||||
JNB(isize),
|
||||
JZ(isize),
|
||||
JNZ(isize),
|
||||
JBE(isize),
|
||||
JA(isize),
|
||||
JS(isize),
|
||||
JNS(isize),
|
||||
JPE(isize),
|
||||
JPO(isize),
|
||||
JL(isize),
|
||||
JGE(isize),
|
||||
JLE(isize),
|
||||
JG(isize),
|
||||
LOOPNZ(isize),
|
||||
LOOPZ(isize),
|
||||
LOOP(isize),
|
||||
JCXZ(isize),
|
||||
// Jumps conditional
|
||||
JO(usize),
|
||||
JNO(usize),
|
||||
JB(usize),
|
||||
JNB(usize),
|
||||
JZ(usize),
|
||||
JNZ(usize),
|
||||
JBE(usize),
|
||||
JA(usize),
|
||||
JS(usize),
|
||||
JNS(usize),
|
||||
JPE(usize),
|
||||
JPO(usize),
|
||||
JL(usize),
|
||||
JGE(usize),
|
||||
JLE(usize),
|
||||
JG(usize),
|
||||
LOOPNZ(usize),
|
||||
LOOPZ(usize),
|
||||
LOOP(usize),
|
||||
JCXZ(usize),
|
||||
|
||||
// TEST
|
||||
TEST(ModRmTarget, Register),
|
||||
@@ -203,13 +203,13 @@ pub enum Mnemonic {
|
||||
CWD,
|
||||
// CALL
|
||||
CALL_p(Pointer32),
|
||||
CALL_v(isize),
|
||||
CALL_v(usize),
|
||||
CALL_Mod(ModRmTarget),
|
||||
CALL_Mp(Pointer16),
|
||||
// JUMP
|
||||
JMP_p(Pointer32),
|
||||
JMP_b(isize), // parses IByte, but stores as isize
|
||||
JMP_v(isize), // parwses IWord, but stores as isize
|
||||
JMP_b(usize), // parses IByte, but stores as isize
|
||||
JMP_v(usize), // parwses IWord, but stores as isize
|
||||
JMP_Mod(ModRmTarget),
|
||||
JMP_Mp(Pointer16),
|
||||
// WAIT
|
||||
|
||||
Reference in New Issue
Block a user