* armemu.h (WRITEDESTB): New macro.

* armemu.c (ARMul_Emulate26, bl): Use WriteR15Branch() to
modify PC.  Moved the existing logic...
(WriteR15Branch): ... here.  New function.
(WriteR15, WriteSR15): Drop the two least significant bits.
(LoadSMult): Use WriteR15Branch() to modify PC.
(LoadMult): Use WRITEDESTB() instead of WRITEDEST().
This commit is contained in:
Alexandre Oliva
2000-07-04 06:35:36 +00:00
parent cf52c765b0
commit 892c6b9d8f
3 changed files with 48 additions and 37 deletions

View File

@@ -332,6 +332,11 @@ extern ARMword isize;
ARMul_NegZero(state, d) ; \
}
#define WRITEDESTB(d) if (DESTReg == 15) \
WriteR15Branch(state, d) ; \
else \
DEST = d
#define BYTETOBUS(data) ((data & 0xff) | \
((data & 0xff) << 8) | \
((data & 0xff) << 16) | \